我有这个HTML代码:
<ul id="mainlynav">
<li><a href="#">text1</a>
<ul class="subnavul">
<li>
<a href="a.php">Link to a</a>
</li>
<li>
<a href="b.php">Link to b</a>
</li>
<li>
<a href="b.php">Link to b</a>
</li>
</ul>
</li>
<li><a href="#">text2</a>
<ul class="subnavul">
<li>
<a href="d.php">Link to d</a>
</li>
<li>
<a href="e.php">Link to e</a>
</li>
<li>
<a href="f.php">Link to f</a>
</li>
</ul>
</li></ul>
我希望当用户点击其中一个顶级链接(text1或text2)时,页面转到第一个子链接(如果text1页面应该转到“a.php”) 所以我这样写我的剧本:
<script type="text/javascript">
$(document).ready(function(){
$('#mainlynav a[href="#"]').click(function(){
var DOM = $(this).siblings('.subnavul').first();
var DOM2 = DOM.children('li').first();
var DOM3 = DOM2.children('a').first();
document.location=DOM3.attr('href');
return false;
});
});
</script>
这整个过程在所有现代浏览器中都能正常工作 但在IE6&amp; 7,它不起作用!
问题是什么?
提前感谢。
答案 0 :(得分:0)
您的代码:
$(document).ready(function(){
$('#mainlynav a[href="#"]').click(function(){
var url = $(this).next('.subnavul').find('a').first().attr('href');
if(url) {
document.location.href = url;
return false;
}
});
});