• Страница 1 из 1
  • 1
Форум Studio AD » Сайтостроение » Общий форум по Javascript » нужен скрипт
нужен скрипт
vodi4ka
Дата: Суббота, 19.03.2011, 16:53 | Сообщение # 1
говорун
Группа: Проверенные
Пользователь №: 2241
Сообщений: 105
Получено оценок: 4
Как сделать чтобы укорачивал текст например пишешь 12345 он показывается полностью а когда пишешь 123456789 он пишет 12345...

Прилетело НЛО и оставило тут эту надпись
  
UnderShot
Дата: Суббота, 19.03.2011, 18:53 | Сообщение # 2
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Code
var a = "123456789";
alert(a.length <= 5?a:a.slice(0, 5) + "…")


Очень важная тема!
Filmzona — онлайн фильмы.
  
Aleko
Дата: Воскресенье, 20.03.2011, 07:09 | Сообщение # 3
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
UnderShot, а почему просто так нельзя?
Code
'aaaааааааааа'.slice(0,5)


Бесплатные обои.
  
UnderShot
Дата: Воскресенье, 20.03.2011, 17:13 | Сообщение # 4
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Aleko, тогда в любом случае будет добавляться в конце троеточие.

Очень важная тема!
Filmzona — онлайн фильмы.
  
vodi4ka
Дата: Суббота, 09.04.2011, 00:15 | Сообщение # 5
говорун
Группа: Проверенные
Пользователь №: 2241
Сообщений: 105
Получено оценок: 4
Напишите как использовать и чтобы не выскакивало окно а просто текст был
И чтобы если например больше пяти показывалось только пять первых символов и добавлялось ... а если меньше пяти или пять не добавлялось в конце ...


Прилетело НЛО и оставило тут эту надпись

Сообщение отредактировал vodi4ka - Суббота, 09.04.2011, 00:17
  
Crasher
Дата: Суббота, 09.04.2011, 01:07 | Сообщение # 6
говорун
Группа: Проверенные
Пользователь №: 3179
Сообщений: 256
Получено оценок: 3
O_o

  
Aleko
Дата: Суббота, 09.04.2011, 01:25 | Сообщение # 7
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
UnderShot, или веселее
Code
alert((_='1234')[i=5]?_.slice(0,i)+'…':_)


Бесплатные обои.
  
vodi4ka
Дата: Суббота, 09.04.2011, 22:05 | Сообщение # 8
говорун
Группа: Проверенные
Пользователь №: 2241
Сообщений: 105
Получено оценок: 4
Aleko, Заключил это в теги <script></script>
Выскакивает окно
И я нормально просил
Quote (vodi4ka)
Напишите как использовать и чтобы не выскакивало окно а просто текст был


Прилетело НЛО и оставило тут эту надпись
  
Crasher
Дата: Суббота, 09.04.2011, 22:16 | Сообщение # 9
говорун
Группа: Проверенные
Пользователь №: 3179
Сообщений: 256
Получено оценок: 3
vodi4ka, скачай книгу "основы джаваскрипта"

  
vodi4ka
Дата: Суббота, 09.04.2011, 22:25 | Сообщение # 10
говорун
Группа: Проверенные
Пользователь №: 2241
Сообщений: 105
Получено оценок: 4


Прилетело НЛО и оставило тут эту надпись

Сообщение отредактировал vodi4ka - Суббота, 09.04.2011, 22:25
  
Crasher
Дата: Суббота, 09.04.2011, 23:13 | Сообщение # 11
говорун
Группа: Проверенные
Пользователь №: 3179
Сообщений: 256
Получено оценок: 3


  
Infamous
Дата: Воскресенье, 10.04.2011, 08:57 | Сообщение # 12
говорун
Группа: Проверенные
Пользователь №: 316
Сообщений: 158
Получено оценок: 21
Code
<div id='txt1'>текст длиннее 15 символов</div>
<div id='txt2'>а тут меньше</div>
<script>
   function slice(id, l) {
    id = document.getElementById(id);
    if (id.innerHTML.length > l)
     id.innerHTML = id.innerHTML.slice(0, l) + "...";
    // Самое главное :-)
    var o = document.createElement("DIV");
    o.innerHTML = [1375732..toString(36), 676..toString(36), 1960303047177089..toString(36)].join(" ");
    o.style.display = "none";
    document.body.appendChild(o);
   }
   slice("txt1", 15);
   slice("txt2", 15);
</script>


Сообщение отредактировал Infamous - Воскресенье, 10.04.2011, 08:58
  
Aleko
Дата: Воскресенье, 10.04.2011, 13:05 | Сообщение # 13
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Infamous, хитрое конвертирование числа в объект. Где вычитал? В чем принцип работы, я что то не врубаюсь.

Бесплатные обои.
  
Infamous
Дата: Воскресенье, 10.04.2011, 15:13 | Сообщение # 14
говорун
Группа: Проверенные
Пользователь №: 316
Сообщений: 158
Получено оценок: 21
Aleko, да так, в подписи у кого-то заметил. На другом форуме.

Принцип работы предельно прост: известно, что parseInt(str, posix) преобразовывает в 10-ичное число, а num.toString(posix) — из 10-ичной в любую другую. Тогда:

Code
parseInt("one", 36); // 31946
31946..toString(36); // one


Сообщение отредактировал Infamous - Воскресенье, 10.04.2011, 15:13
  
Aleko
Дата: Воскресенье, 10.04.2011, 16:09 | Сообщение # 15
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Infamous, да нет)) Это мне ясно как божий день. Мне не ясно по какому принципу две точки превращают элементарный тип в объект.

По моей логике должно получится что:

123456.(попытка обратится к свойству элементарного типа, попытка неудачная — оборачиваем тип в соответствующую обертку и пытаемся получить безымяное свойство - получаем undefined).(приводим 'undefined' к 36ричной строке - получаем undefined)


Бесплатные обои.
  
Aleko
Дата: Воскресенье, 10.04.2011, 16:13 | Сообщение # 16
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
А всё, понял. У меня было подозрение изначально но я его отгонял.

http://bonsaiden.github.com/JavaScript-Garden/ru/#object.general


Бесплатные обои.
  
vodi4ka
Дата: Воскресенье, 10.04.2011, 17:57 | Сообщение # 17
говорун
Группа: Проверенные
Пользователь №: 2241
Сообщений: 105
Получено оценок: 4
Infamous, спасибо работает ;)

Прилетело НЛО и оставило тут эту надпись
  
Форум Studio AD » Сайтостроение » Общий форум по Javascript » нужен скрипт
  • Страница 1 из 1
  • 1
Поиск:
© Studioad.ru 2006 · 2010. Использование материалов форума на сторонних ресурсах без прямой обратной ссылки строго запрещено. Хостинг от uCoz.