Не срабатывает getElementById
Только-только начал изучать js, не бейте сильно.
В примере на странице - http://javascript.ru/tutorial/dom/search - дан код, меняющий ссылку на синию. На этой же странице я нахожу элемент navbar-row, подставляю его вместо элемента в примере, консоль в хроме отдаёт значение подставляемого цвета, но на странице цвет текста не меняется. Вместо параметра color подставляю padding, измнения на странице происходят. Что я делаю не так? Дальше. Беру работающий код с паддингом, подключаю его через site preference в опере, но обработчик выдаёт ошибку User Javascript thread Uncaught exception: TypeError: Cannot convert 'document.getElementById('navbar-row')' to object Error thrown at line 1, column 0 in autogod.js: document.getElementById('navbar-row').style.padding = '20px'; Такая же ерунда с greasemonkey в файрфоксе. Объясните, почему? |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
Попробуй теперь набрать в консоли следующее: document.getElementById('navbar-row').innerHTML += "mytext"; То есть, добавить в div голый текст. Его цвет будет изменен. |
Точно, об этом совсем забыл. Спасибо.
А почему может не работать подключаемый скрипт, хотя через консоль всё получается? |
Цитата:
самый легкий вариант решения проблемы - подключать <script> перед закрывающим тегом body (</body>) |
Цитата:
http://www.opera.com/docs/userjs/using/#writingscripts. Например, вот: // ==UserScript== // @name test yandex // @description test yandex // @include [url]http://yandex.ru*[/url] // ==/UserScript== music = document.getElementById('tab-music').innerHTML; alert (music); upd Понял свою ошибку, забыл прописать условие для адреса с www |
Часовой пояс GMT +3, время: 08:06. |