|
10.04.2010, 23:37
|
|
Модератор Всея Форума
|
|
Регистрация: 14.05.2009
Сообщений: 4,021
|
|
В 8 IE можно использовать querySelectorAlll. Функцию нужно переписывать.
|
|
11.04.2010, 18:00
|
Аспирант
|
|
Регистрация: 10.04.2010
Сообщений: 34
|
|
Так как же сделать обновление перед выбором другой функции?
|
|
11.04.2010, 20:24
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Ваш вопрос на форуме по C++ звучал бы примерно так: "Как перезапустить программу перед выбором другой функции?". Нелепость понятна?
|
|
11.04.2010, 21:13
|
Аспирант
|
|
Регистрация: 10.04.2010
Сообщений: 34
|
|
Kolyaj,
Не нужно цепляться к неверно сформулированному вопросу. Ведь суть вопроса понятна.
|
|
11.04.2010, 21:21
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Нет, не понятна.
|
|
11.04.2010, 21:24
|
Аспирант
|
|
Регистрация: 10.04.2010
Сообщений: 34
|
|
Kolyaj,
а вы код из первого поста в нотпад скопируйте, сразу будет всё наглядно видно, если хотите помочь, а не позлословить.
|
|
11.04.2010, 21:31
|
Аспирант
|
|
Регистрация: 10.04.2010
Сообщений: 34
|
|
Ладно, в итоге получилось привинтить визибилити, но код очень громоздкий, можно ли его как-нибудь укомпактить?
<script type="text/javascript">
function find_c1() {
var f1 = document.getElementById('layer').getElementsByClassName('c1')
for (var i=0; i<f1.length; i++)
f1[i].style.visibility = "hidden";
var f2 = document.getElementById('layer').getElementsByClassName('c2')
for (var i=0; i<f2.length; i++)
f2[i].style.visibility = "visible";
var f3 = document.getElementById('layer').getElementsByClassName('c3')
for (var i=0; i<f3.length; i++)
f3[i].style.visibility = "visible";
var f4 = document.getElementById('layer').getElementsByClassName('c4')
for (var i=0; i<f4.length; i++)
f4[i].style.visibility = "visible";
}
function find_c2() {
var f1 = document.getElementById('layer').getElementsByClassName('c1')
for (var i=0; i<f1.length; i++)
f1[i].style.visibility = "visible";
var f2 = document.getElementById('layer').getElementsByClassName('c2')
for (var i=0; i<f2.length; i++)
f2[i].style.visibility = "hidden";
var f3 = document.getElementById('layer').getElementsByClassName('c3')
for (var i=0; i<f3.length; i++)
f3[i].style.visibility = "visible";
var f4 = document.getElementById('layer').getElementsByClassName('c4')
for (var i=0; i<f4.length; i++)
f4[i].style.visibility = "visible";
}
function find_c3() {
var f1 = document.getElementById('layer').getElementsByClassName('c1')
for (var i=0; i<f1.length; i++)
f1[i].style.visibility = "visible";
var f2 = document.getElementById('layer').getElementsByClassName('c2')
for (var i=0; i<f2.length; i++)
f2[i].style.visibility = "visible";
var f3 = document.getElementById('layer').getElementsByClassName('c3')
for (var i=0; i<f3.length; i++)
f3[i].style.visibility = "hidden";
var f4 = document.getElementById('layer').getElementsByClassName('c4')
for (var i=0; i<f4.length; i++)
f4[i].style.visibility = "visible";
}
function find_c4() {
var f1 = document.getElementById('layer').getElementsByClassName('c1')
for (var i=0; i<f1.length; i++)
f1[i].style.visibility = "visible";
var f2 = document.getElementById('layer').getElementsByClassName('c2')
for (var i=0; i<f2.length; i++)
f2[i].style.visibility = "visible";
var f3 = document.getElementById('layer').getElementsByClassName('c3')
for (var i=0; i<f3.length; i++)
f3[i].style.visibility = "visible";
var f4 = document.getElementById('layer').getElementsByClassName('c4')
for (var i=0; i<f4.length; i++)
f4[i].style.visibility = "hidden";
}
</script>
|
|
11.04.2010, 21:44
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
denisok82,
Ч, ч, ч, чё это?!
этот код не можно, а нужно "укомпактить".
|
|
11.04.2010, 21:48
|
Аспирант
|
|
Регистрация: 10.04.2010
Сообщений: 34
|
|
Gozar,
Ну главное - работает!
Подскажите - как ужать код.
Попытался вынести в глобальные переменные, почему-то не работает.
<script type="text/javascript">
var f1 = document.getElementById('layer').getElementsByClassName('c1');
var f2 = document.getElementById('layer').getElementsByClassName('c2');
var f3 = document.getElementById('layer').getElementsByClassName('c3');
var f4 = document.getElementById('layer').getElementsByClassName('c4');
function find_c1() {
for (var i=0; i<f1.length; i++)
f1[i].style.visibility = "hidden";
for (var i=0; i<f2.length; i++)
f2[i].style.visibility = "visible";
for (var i=0; i<f3.length; i++)
f3[i].style.visibility = "visible";
for (var i=0; i<f4.length; i++)
f4[i].style.visibility = "visible";
}
</script>
|
|
11.04.2010, 21:49
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
denisok82,
Вы когда-нибудь слышали или читали о том, что в функцию могут передаваться аргументы?
например:
function find(hidden_id){}
Последний раз редактировалось Gozar, 11.04.2010 в 21:51.
Причина: ?
|
|
|
|