Не срабатывает 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, время: 14:46. |