Почему сообщение пустое?
var mColor = document.getElementById('book_contents').style.color;
alert(mColor);
}
document.getElementById('BW').onclick = function() {
toggleBW();
};
p.s. Свойства "book_contents" записаны во внешнем файле стилей.
сначала наследовалось, теперь руками в стиле написал color:#000000;
все равно пишет undefined. Если пишу цвет словом whitebkb black и через String вытаскиваю (а было через parseInt) то все равно indefined (bkb NaN, или пустое окно или вообще окно не появляется.
А функция из функции вызывается - это на будущее, чтобы можно было подставлять разные id и разные параметры. (структуру выудил из какого-то другого примера иностранного дядьки. Вообще все это должно срабатывать при нажатии на кнопку с ID = BW. (я тут перебрал кучу вариантов сочетаний функций-подфункций и где их вызывать из HTML'a). Вобщем в голове уже каша, но так пока работает, хоть и без верного результата (боюсь лишний раз трогать))
А функция из функции вызывается - это на будущее, чтобы можно было подставлять разные id и разные параметры. (структуру выудил из какого-то другого примера иностранного дядьки. Вообще все это должно срабатывать при нажатии на кнопку с ID = BW. (я тут перебрал кучу вариантов сочетаний функций-подфункций и где их вызывать из HTML'a). Вобщем в голове уже каша, но так пока работает, хоть и без верного результата (боюсь лишний раз трогать))
Не вызывается функция из функции, если не вызвать внешнюю функцию. Проще говоря: ты привёл не весь код, из него не ясно что вообще инициирует toggleBW().
Теперь я в нее добавил параметры:
//тут я просто проверяю: что-то вообще происходит или нет.
alert('element: ' + elm);
alert('parametr: ' + prmtr);
var mElm = document.getElementById(elm);
var mColor = String(mElm.style.prmtr);
alert(mColor); //тут ШИШ))
document.getElementById('BW').onclick = function() {
toggleBW('book_contents', 'color');
};
^^^^^
...
var mColor = String(mElm.style.prmtr);
^^^^^
...
};
Что такое computed style вообще в курсе?
toggleBW();
};
Как следствие, я не понял дальнейшие записи.
Особенно строчку
Этапять. function a1(){...}; function a2(){a1();};.. function an(){an-1();}; ...onClick = function(){an();};
Что значит "Этапять"? Сленг? Сокращение? Опечатка?)) А сама строка - это образец как надо или как не надо? И что именно "надо-не надо"?
Хотя основной месседж понятен - "учите матчасть" )))
в HTML
//alert(elm);
//alert(prmtr);
var mElm = document.getElementById(elm);
var B_color = window.getComputedStyle (mElm, null).getPropertyValue ('background-color');
var F_color = window.getComputedStyle (mElm, null).getPropertyValue ('color');
if(F_color == 'rgb(0, 0, 0)'){
document.getElementById('book_contents').style.color='#F3F3DA';
document.getElementById('book_contents').style.backgroundColor='#494646';
disp = 'none';
} else {
document.getElementById('book_contents').style.color='#000000';
document.getElementById('book_contents').style.backgroundColor='#EAE8E2';
}
}
document.getElementById('BW').onclick = function() {
var mID = ['book_contents']; //тут потом "заколлекчу" нужные элементы для смены цветов
var mParam = 'color'; //, 'backgroundColor'];
for (i=0; i<mID.length; i++) {
toggleBW(mID, mParam[i]);
}
};