дочерние элементы
как посчитать количесто вхождений других div в главный div?
на примере, если можно |
document.getElementById('mainDiv').getElementsByTagName('div').length; |
что я делаю не так, я хочу вывести их количество
вот код <html> <head> <script language="javascript"> tt=document.getElementById('vopros').getElementsByTagName('div').length; </script> </head> <body> <script> document.write(tt); </script> <div id="vopros" style="visibility:hidden";> <div id="question1"> <p>Сколько будет 2+2 ?</p> <input id=v101 name="Name" type="checkbox" value="5">5<br> <input id=v102 name="Name" type="checkbox" value="4">4<br> <input id=v103 name="Name" type="checkbox" value="7">7<br> <input id=v104 name="Name" type="checkbox" value="3">3 </div> <div id="question2"> <p>Сколько тебе лет ?</p> <input id=v201 name="Name" type="checkbox" value="15">15<br> <input id=v202 name="Name" type="checkbox" value="14">14<br> <input id=v203 name="Name" type="checkbox" value="17">17<br> <input id=v204 name="Name" type="checkbox" value="13">13 </div> <div id="question3"> <p>Сколько будет 2*2 ?</p> <input id=v301 name="Name" type="checkbox" value="15">15<br> <input id=v302 name="Name" type="checkbox" value="4">4<br> <input id=v303 name="Name" type="checkbox" value="17">17<br> <input id=v304 name="Name" type="checkbox" value="13">13 </div> </div> </body> </html> |
window.onload
|
извините за назойливость, куда мне написать то, что вы мне дали
|
в гугл.
|
сделал так, но выводит только 3, а надо чтобы все выводило
<html> <head> <script language="javascript"> function show(question) { document.getElementById('questarea').innerHTML=document.getElementById(question).innerHTML; } function s() { var tt=document.getElementById('vopros').getElementsByTagName('div').length; document.write(tt); } </script> </head> <body onload="s();"> <div id="vopros" style="visibility:hidden";> <div id="question1"> <p>Сколько будет 2+2 ?</p> <input id=v101 name="Name" type="checkbox" value="5">5<br> <input id=v102 name="Name" type="checkbox" value="4">4<br> <input id=v103 name="Name" type="checkbox" value="7">7<br> <input id=v104 name="Name" type="checkbox" value="3">3 </div> <div id="question2"> <p>Сколько тебе лет ?</p> <input id=v201 name="Name" type="checkbox" value="15">15<br> <input id=v202 name="Name" type="checkbox" value="14">14<br> <input id=v203 name="Name" type="checkbox" value="17">17<br> <input id=v204 name="Name" type="checkbox" value="13">13 </div> <div id="question3"> <p>Сколько будет 2*2 ?</p> <input id=v301 name="Name" type="checkbox" value="15">15<br> <input id=v302 name="Name" type="checkbox" value="4">4<br> <input id=v303 name="Name" type="checkbox" value="17">17<br> <input id=v304 name="Name" type="checkbox" value="13">13 </div> </div> </body> </html> |
http://innerhtml.ru desu
|
есть код
<script> var tt=document.getElementById('vopros').getElementsByTagName('div'); document.write('<div id="button" style="position: absolute; top: 20px; left: 120px; height:80%; width: 120px; overflow: scroll; overflow-x: hidden;">'); for(var i=0; i<tt.length; i++) { var j=i+1; document.write('<input type="button" value="Вопрос '+j+'" style="width:100" OnClick="show('+'tt['+i+'].id'+')"><br>'); } document.write('</div>'); </script> tt=3; r- массив, в нем храняться значения question4, question7, question3 получается следующее <div id="button" style="position: absolute; top: 20px; left: 120px; height:80%; width: 120px; overflow: scroll; overflow-x: hidden;"> <input type="button" value="Вопрос 1" style='width:100' OnClick="show('question4')"> <input type="button" value="Вопрос 2" style='width:100' OnClick="show('question7')"> <input type="button" value="Вопрос 3" style='width:100' OnClick="show('question3')"> </div> допустим я нажал по вопросу 1, вывело в div кое какой текст. как теперь сделать, чтобы по нажатию на кнопку(созданную заранее), показывался следующий id=question7. |
Я не понял тебе нужна 1 кнопка для отображения вопросов или для каждого вопроса отдельная? Если тебе надо одной кнопкой отображать вопросы по очереди, то вот:
Ты сможешь перебирать все твои вопросы по очереди, путем хранения твоих вопросов в массиве, метод shift() здесь оставит вопрос, который идёт по очереди, начиная с 0-го индекса, а остальные удалит, вызывая фун-ю words() - перебирается массив. Сделаешь проверку на последний элемент массива, надеюсь, что продумать всё остальное сможешь сам, это как пример:D <script type="text/javascript"> var questions=new Array("Учи массивы, ","их методы, ","а ткаже DOM ","и прийдёт ","к ","тебе ","вдохновение!!!!" ); var mass=[]; function words(){ mass=questions.shift(questions.length); document.getElementById("q").innerHTML="<b>"+mass+"</b>"; } function returnMassive() { questions=new Array("Учи массивы, ","их методы, ","а ткаже DOM ","и прийдёт ","к ","тебе ","вдохновение!!!!" ); document.getElementById("q").innerHTML="<i>"+'Запусти заново'+"</i>"; } </script> <div id="q"></div> <br/> <a href="#" onclick="words()" style=" color:#0099FF; text-decoration:none"> Следующий </a> <a href="#" onclick="returnMassive()" style=" color:#0099FF; text-decoration:none">| Вернуть массив </a> Как пример можно сделать любой тест;) Лучше запускать через <body onload="words()"></body> Таким способом можно сделать анимацию, когда слово за словом идет через setTimeout ))) |
Часовой пояс GMT +3, время: 17:19. |