getElementById().style
Приветствую.
Есть задача менять куски оформления js'ом Вроди задача тривиальная, но толи лыжи не едут, толи я *****..... Чего есть: Код:
#SearchBar { if ("%SEARCH-ENABLED%" == '1') { document.getElementById('quickdial').style.margin = '10px auto'; document.getElementById('SearchBar').style.width = '40px'; } Реакции - 0. Пихаю туда alert () - работает. Что еще интересно: Рядом есть вот это: if ("%IMG_BACKGROUND%" == '') { document.getElementById("html").style.background = 'url("qrc:html/bg.svg")'; document.getElementById("html").style.backgroundSize = 'cover'; } Этот кусок работает О_О Где я не прав? |
Шаблонизатор под js какой-то используется что-ли?
Если условие выполняется, то возможно на странице в момент выполнения условия нет элементов с id "quickdial" и "SearchBar". |
diablopc,
:-? |
Да страница чуть-ли не статическая....
там-же, чуть ниже: <div class="SearchBar" id="SearchBar"> <div id="SearchBarToggle" onClick="searchToggle()"> </div> </div> <div id="quickdial"> </div> searchToggle() переключает переменную %SEARCH-ENABLED% и делает location.reload() |
Цитата:
|
Цитата:
|
сс
Цитата:
function searchToggle() { if ("%SEARCH-ENABLED%" == '1') { external.speedDial.setsearchEnabled(false); } else { external.speedDial.setsearchEnabled(true); }; location.reload(); } Которая возвращается вот этим: Код:
searchEnabled = settings.value("searchEnabled", true).toBool(); Если на страницу вставить <div>%SEARCH-ENABLED%</div>, то по searchToggle() оно переключается (Показывая посреди страницы или '0' или '1')... Весь прикол именно в стилях Зы Ну да, логично, здесь это строка =) ...только ее содержание меняется)) |
Цитата:
Цитата:
Если "%SEARCH-ENABLED%" действительно переменная, скиньте пару ссылок почитать о таких переменных, крайне интересно. |
По сути в JS это строка, подменяемая на некое значение (в данном случае 0 или 1) внешним программным кодом.
Причем снаружи она подменяется отлично, так-же как и %IMG_BACKGROUND% может возвращать null, а может нечто типа file:///ololo.png. |
Попробуйте:
if ("%SEARCH-ENABLED%" == '1') { if(!document.getElementById('quickdial')) alert('quickdial нет на странице'); if(!document.getElementById('SearchBar')) alert('quickdial нет на странице'); document.getElementById('quickdial').style.margin = '10px auto'; document.getElementById('SearchBar').style.width = '40px'; } |
Часовой пояс GMT +3, время: 05:43. |