Вы не зашли.

#1 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Поможем друг-другу разобраться в JavaScript...


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#2 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Начал разгребать JS, иногда что то элементраное просто неукого спросить, да и сформировать правильный запрос для того же гугла, не зная толком о чем речь, не совсем получаеться...
Думаю тема никому не помешает, найдуться те кто уже работал\работает с этим языком и поможет познать его нам - начинающим. (:

Ну и первый вопрос:
как сразу нескольким переменным - присвоить чысловое значение?
var name = 7; // правильный вариант.
var name = "%nick%" = 7; // нужный ,но не рабочий вариант.
Хотя var name = name2 = 7; - работает.

Отредактированно ZloVeЩиЙ (2010-10-23 21:28:48)


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#3 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

Эм... Что за извращение? С каких пор "%nick%" -  это переменная?
Сколько языков видел - везде в ковычках - это строка.
%nick% ты видимо с мпчата взял... Так там это вообще серверная переменная, не зависящая от всяких там JS'ов...

Неактивен

#4 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Сообщение от Trilby:

Эм... Что за извращение? С каких пор "%nick%" -  это переменная?
Сколько языков видел - везде в ковычках - это строка.
%nick% ты видимо с мпчата взял... Так там это вообще серверная переменная, не зависящая от всяких там JS'ов...

Да вот извращаюсь как могу, пока есть на что смазать ((:
Нашел решения для себя, пока пропишу условием, а там по ходу создания и паралельного изучения, может вариант по более найду...

Второй глупый вопрос:
JS не умееет считать?
var rating = 0.05+0.05+0.05;
var percent = rating*100;
все это равно 15.000000000000001
yikes

Отредактированно ZloVeЩиЙ (2010-10-24 00:33:26)


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#5 

ValdeZ
Moderator
Имя: Владислав
Откуда: Украина
Зарегистрирован: 2008-02-09
Сообщений: 4875
На форуме: 860 час.
Репутация: 347 (97%) ±
Инфо  Написать

В первое не вникал особо, Болт в принципе правильно ответил. Штука типа %nick% в конечном счёте будет представлять из себя либо строку (значение) либо литерал (название, которое вставится на месте этой строки). Не помню точно.
Но это точно не название переменной:
См. http://jslangg.blogspot.com/2010/10/1_25.html (1.5), литералы не могут начинаться с "%".

JavaScript умеет считать.
Подобный "казус" можно обнаружить и в ПХП и в Питоне и во многих других языках.
Дело в том, что некоторые десятичные дроби нельзя выразить в виде конечного числа. Особенно нечто типа: 0.7 и т.д.
Самый халявный способ, если не вникать в детали - делать вот так:

Да-да, магическое сочетание символов "~~" преобразовывает всё что может в целые числа.

Отредактированно ValdeZ (2010-10-26 00:29:25)

Неактивен

#6 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Сообщение от ValdeZ:

В первое не вникал особо, Болт в принципе правильно ответил. Штука типа %nick% в конечном счёте будет представлять из себя либо строку (значение) либо литерал (название, которое вставится на месте этой строки). Не помню точно.
Но это точно не название переменной:
См. http://jslangg.blogspot.com/2010/10/1_25.html (1.5), литералы не могут начинаться с "%".

JavaScript умеет считать.
Подобный "казус" можно обнаружить и в ПХП и в Питоне и во многих других языках.
Дело в том, что некоторые десятичные дроби нельзя выразить в виде конечного числа. Особенно нечто типа: 0.7 и т.д.
Самый халявный способ - делать вот так:

Да-да, магическое сочетание символов "~~" преобразовывает всё что может в целые числа.
Так же как "!!" преобразовывает всё что может в булев тип.

Не прошло и два дня(:
Спасибо конечно но уже нашел, пришел к выводу что легче будет целые чысла использовать.


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#7 

ValdeZ
Moderator
Имя: Владислав
Откуда: Украина
Зарегистрирован: 2008-02-09
Сообщений: 4875
На форуме: 860 час.
Репутация: 347 (97%) ±
Инфо  Написать

Извини, только сейчас прочитал

Если не хочешь каждый раз с такой фигнёй страдать - учитывай порядок вычислений.
Можно сначала умножить на сто а потом на три - получится ровно 1500, без дробной части.
Именно так, потому-что в твоём варианте:
- ты сначала получаешь число равное 15/100
- интерпретатор сокращает числитель и знаменатель на пять и получает дробь 3/20, которая делится с остачей 2
- множишь на сто: получаешь 1500 и эту остачу после кучи знаков после точки.
Подобная логика.
Поэтому внимательно следи, если заранее известны числа.
Если нет - способ выше, с магическим сочетанием символов

Не проще использовать целые числа - проще иметь один выход для таких ситуаций.
Избегание проблемы - не способ её решения.

Отредактированно ValdeZ (2010-10-26 00:35:03)

Неактивен

#8 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

<off>Чисто мое имхо: в любом языке программирования обычные вычисления - это САМОЕ простое, что может быть...

Неактивен

#9 

ValdeZ
Moderator
Имя: Владислав
Откуда: Украина
Зарегистрирован: 2008-02-09
Сообщений: 4875
На форуме: 860 час.
Репутация: 347 (97%) ±
Инфо  Написать

Да тут ничего сложного то и нет.
Опять же, так само ведёт себя и ПХП и Питон, и Руби, насколько я смотрел их документацию...
Здесь ничего выдуманного - всё верно.

Неактивен

#10 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Есть некий обьект при щелчке у которого меняеться title="" каким образом можно поменять значение при обратном щелчке?
onclick='this.title="111";'
еще раз клик и title="222"
...


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#11 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

Дык, создаёшь список: http://javascript.ru/Array с нужными тайтлами, к объекту добавь переменную с цифрами ( nums=0; )
При клике цепляешь тайтл из Array с номером, указанным в nums.. Ну, и, соответственно значение nums увеличиваешь на 1 )


Индусы он-лайн, короче

Неактивен

#12 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Сообщение от Trilby:

Дык, создаёшь список: http://javascript.ru/Array с нужными тайтлами, к объекту добавь переменную с цифрами ( nums=0; )
При клике цепляешь тайтл из Array с номером, указанным в nums.. Ну, и, соответственно значение nums увеличиваешь на 1 )
Индусы он-лайн, короче

Как вариант но слишком "тяжелый" как в плане веса так и исполнения.
Пошарился тут по готовых решениях от ридза, нашел кое-чего интересного для себя)

onclick='this.title=parent.zzz?"подсказка #2":"подсказка #1";"' title='подсказка #1'

Начальное значение title
Изменяемое значение title
все это работает при условии что
zzz - определенная переменная.
-Для чего можно использовать?
-Например для смены изображений\подсказок - вкл.\выкл. пр.

Отредактированно ZloVeЩиЙ (2010-11-22 20:04:54)


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#13 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

Так тебе только два варианта надо? Или тут нету лимита?

Неактивен

#14 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

насчет лимита не знаю, не тестировал...
мне достаточно 2-х подсказок, "кнопка включена" - когда она включена ну и "кнопка выключена" соответственно(:


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#15 

ridz
Moderator
Зарегистрирован: 2008-11-25
Сообщений: 458
На форуме: 302 час.
Репутация: 508 (100%) ±
Инфо  Вебсайт  Написать

ZloVeЩиЙ, )))

onclick='this.title=this.title=="подсказка #1"?"подсказка #2":"подсказка #1"'


нет интернета = заказы не беру

Неактивен

#16 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Есть три блока внутри одного блока:

<div class='box'>
<div class='uno'>1</div>
<div class='due'>2</div>
<div class='tre' onMouseOver=this.className='tre_h' onMouseOut=this.className='tre'>3</div>
</div>

как видно при наведении курсора на последний блок его класс меняется с tre на tre_h...
как правильно прописать, что бы при наведении на любой из 3-х блоков которые лежат в box`e класс для третьего блока так же менялся?

Отредактированно ZloVeЩиЙ (2010-11-30 22:38:05)


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#17 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

Дык чо, не судьба к самому "Box" прикрутить функцию?
Все три блока же находятся в самом боксе
[box  [une] [deux] [trois]  /box]


p.s. Чтобы с this не морочиться в такой ситуации - можно через document.getElementsById обращаться к блоку. Лично мне так удобно, ты сам выбирай

Отредактированно Trilby (2010-11-30 23:06:53)

Неактивен

#18 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Сообщение от Trilby:

Дык чо, не судьба к самому "Box" прикрутить функцию?
Все три блока же находятся в самом боксе
[box  [une] [deux] [trois]  /box]


p.s. Чтобы с this не морочиться в такой ситуации - можно через document.getElementsById обращаться к блоку. Лично мне так удобно, ты сам выбирай

Точно, как то сам не догадался ):


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#19 

ZloVeЩиЙ
Профи
Имя: Andrew
Зарегистрирован: 2008-01-15
Сообщений: 6702
На форуме: 1484 час.
Репутация: 448 (85%) ±
Инфо  Вебсайт  Написать

Как поменять class в зависимости от url?
Тоесть если domen.com/?to=register то class='one'
if domen.com/?to=call то class='two'
else class='three'

p.s. ?to=name - имя документа.html который инклудим.

Отредактированно ZloVeЩиЙ (2011-02-05 00:26:44)


[img]http://imgs.su/tmp/1315727312-616.jpg[/img] - use it.

Неактивен

#20 

Trilby
miss me?
Имя: Алексей
Откуда: Default City
Зарегистрирован: 2006-08-01
Сообщений: 8497
На форуме: 802 час.
Репутация: 766 (94%) ±
Инфо  Вебсайт  Написать

Сообщение от ZloVeЩиЙ:

Как поменять class в зависимости от url?
Тоесть если domen.com/?to=register то class='one'
if domen.com/?to=call то class='two'
else class='three'

p.s. ?to=name - имя документа.html который инклудим.

Получилось только через метки+jquery сделать сие чудо-юдо..
http://berezuev.ru/wtf/Testing/index.html
http://berezuev.ru/wtf/Testing/index.html#ololo
http://berezuev.ru/wtf/Testing/index.html#lolol
http://berezuev.ru/wtf/Testing/index.html#trololo
ниже архив с этим всем. Вот только, работает оно только на сервере... Ajax как-никак)


Если не лениться и покапаться далее, то можно сделать именно имя файла после решетки... Я просто не стал уже это писать, т.к. там обработчики исключений и прочая байда, а мне уже очень хочется спать... )
по сабжу ещё это советую заценить: http://habrahabr.ru/blogs/jquery/112779/
http://imgs.su/users/6/1296857642.zip

Отредактированно Trilby (2011-02-05 01:16:29)

Неактивен

[ Generated in 0.010 seconds, 11 queries]