class верхнего элемента
Здравствуйте помогите пожалуйста со скриптом, очень нужно :)
Есть вот такой код, но он обрабатывает все с начала страницы, а нужно что бы от клика мышки он поднимался только до определенного класса и от туда уже производил поиск div
<span class="expand">
<div id="h0"> <a class="slide" onclick="document.getElementById('h0').style.display='none';document.getElementById('h1').style.display='';return false;" href="#" >Северный Сервис-Центр <span class="more">Подробнее </span></a> </div>
<div id="h1" style="display: none; "> <a class="link" onclick="document.getElementById('h1').style.display='none';document.getElementById('h0').style.display='';return false;" href="#" >Северный Сервис-Центр <span class="more"> Скрыть </span> </a> </div>
</span>
Всем огромное спасибо :) |
без указания подробностей, наверное, вы хотели получить такой код
document.body.onclick = function(){
polnyatsaDoOpredelennogoClassa();
poiskDiv();
}
|
<span class="expand"> <div id="h0"> <a class="slide" onclick="document.getElementById('h0').style.display='none';document.getElementById('h1').style.display='';return false;" href="#" >Северный Сервис-Центр <span class="more">Подробнее </span></a> </div></span>
вот есть javascipt в таких блоках он ищет id элемента от начала всей страницы, как сделать этот скрипт что бы он обращался к вот этому родителю <span class="expand"> и искал только в нем нужные id Большое спасибо еще раз всем :) весь гугл перерыл не могу разобраться.... |
id у элемента уникален на странице. класс, может тогда?
|
Спасибо большое, я не знал что id не может быть больше одного :) но получается тогда класс искать надо :) но гляда на вашу аватарку.... ))
|
как-то так. без фреймворков. делает по аналогии с вашим кликом.
не требует ID (можно поубирать) работать должен кроссбраузерно. проверьте , пожалуйста, в IE :) я под линуксом , под рукой осла нет. на аватарке написано про объекты-классы, а не про классы у элементов :) код работает так : Цитата:
var ie=/*@cc_on!@*/0, doc=document;
var toggle = function(el,hide/*bool*/){
el.style.display = hide ? 'none':'';
}
var handler = function(e){
var el = ie ? event.srcElement:e.target,
div = "DIV"
// searching element parent node. "div#h0", for ex.
var parent = el.parentNode;
while( parent.tagName != div ) parent = parent.parentNode;
// hide parent div
toggle( parent, true );
// searching next div. "div#h1", fox ex.
var nextDiv = parent.nextSibling;
while( nextDiv.tagName != div ) nextDiv = nextDiv.nextSibling;
// and show it.
toggle( nextDiv, false );
// prevent link click
ie ? (e.returnValue=0):e.preventDefault();
}
ie ? doc.attachEvent("onclick", handler):doc.addEventListener('click', handler, false);
|
| Часовой пояс GMT +3, время: 19:28. |