делаю конструктор из DIV. Замена фона. проблемы.
Только-только учусь...
Делаю форму - конструктор на сайте, событие onclick выдает ошибку: Uncaught SyntaxError: Unexpected identifier test.php:62 Uncaught ReferenceError: jsneck is not defined test.php:63 соответственно строки: <li onclick="finddiv(); javascript: document.getElementById('jsneck').style.background Image=='url(http://192.168.1.150/web/body0.png)'; "> Open Neck </li> <li onclick="javascript: document.getElementById('constr_neck').style.backg round Image='url(http://192.168.1.150/web/body1.png)';"> Квадрат </li> ------------ на 61-ой строке вроде как присваиваю значение jsneck, но все-равно неработает. Кому не очень трудно, гляньте пожалуйста что не так делаю. :help: Код:
<!DOCTYPE html> |
вместо
<li onclick="finddiv(); javascript: document.getElementById('jsneck').style.background Image=='url(http://192.168.1.150/web/body0.png)'; "> Open Neck </li> нужно <li onclick="finddiv(); document.getElementById('jsneck').style.backgroundImage='url(http://192.168.1.150/web/body0.png)'; "> Open Neck </li> |
переменные оппределяются в функции, и уничтожаются после выхода из нее,
вот почитать при клике по OpenNeck ошибка у вас нету элемента с id jsneck при клике по Квадрат у вас нету элемента с id constr_neck |
Ну и да javascript: не нужен
|
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Меню</title> <style> .main {width: 950px; height:100%; border: 0px; margin: 0px; padding: 0px} .constr_main {width:245px; height:474px; border: 0px; margin: 0px; padding: 0px} .constr_background {width:244px; height:474px; border: 0px; margin: 0px; padding: 0px; background-image: url(http://192.168.1.150/web/dp.jpg)} .constr_head {width:245px; height:70px; background-image: url(http://192.168.1.150/web/head.jpg);} .constr_neck {width:245px; height:138px; background-image: url(http://192.168.1.150/web/body0.png);} .constr_arms {width:245px; height: 202px; margin-top: -138px; background-image: url(http://192.168.1.150/web/arms1.png);} .constr_legs {width:245px; height:266px; margin-top: -64px; background-image: url(http://192.168.1.150/web/leg1.png);} .choose {width:685px; height: 200px;margin-top: -400px; margin-left: 250px;} .choose_neck {width:150px; height:200px;} .choose_arms {width:150px; height:200px;} .choose_legs {width:150px; height:200px;} .floatleft {float: left;} </style> </head> <script type="text/javascript" language="javascript"> function finddiv() { // ищем нужный нам тег информера var jsneck = document.getElementsByClassName("constr_neck"); var jsarms = document.getElementsByClassName("constr_arms"); var jslegs = document.getElementsByClassName("constr_legs"); } </script> <body> <div class="main"> <div class="constr_main floatleft"> <div class="constr_background"> <div class="constr_head"> </div> <div class="constr_neck"> </div> <div class="constr_arms"> </div> <div class="constr_legs"> </div> </div> </div> <div class="choose floatleft"> <div class="choose_neck floatleft"> Choose Neck: <ul> <li onclick="finddiv(); javascript: document.getElementById('jsneck').style.background Image=='url(http://192.168.1.150/web/body0.png)'; "> Open Neck </li> <li onclick="javascript: document.getElementById('constr_neck').style.background Image='url(http://192.168.1.150/web/body1.png)';"> Квадрат </li> <li onclick="javascript: jsneck.style.backgroundImage='url(http://192.168.1.150/web/body2.png)';"> Треугольник </li> <li onclick="javascript: jsneck.style.backgroundImage='url(http://192.168.1.150/web/body3.png)';"> Полукруг </li> </ul> </div> </div> </div> </body> Хотя пардон, ваша правда Цитата:
|
Приятно иметь с вами дело =-)
|
Посольку я только осваиваюсь в JAvaScript програмировании, мои вопросы могут звучать абсолютно идиотскими, ноя стараюсь формулировать свои вопросы исходя из того как я вижу язык. (хотя исходя из того, что я только учусь - вижу я его не очень четко)
Начал Использовать CHROME для отладки и проверки команд. Dmitriyff, спасисбо за замечание про кничтожение переменных по окончании функции - учту. (а как посоветуете их определять, что бы они не уничтожались? Если это вообще возможно простым путем) vadim5june, вы писали: <li onclick="finddiv(); document.getElementById('jsneck').style.background Image='url(http://192.168.1.150/web/body0.png)'; "> Open Neck </li> Спасибо, работает. Стало быть работать с элементами, по getElementsByClassName - нельзя? а если мне надо будет одним кликом изменить все элементы определнного Класса? |
Цитата:
есть еще querySelector и querySelectorAll http://javascript.ru/blog/subzey/que...orAll-praktike более мощные-там и по классу можно выборку сделать |
Часовой пояс GMT +3, время: 20:11. |