当用户点击a.test链接时,我想模拟点击li旁边的li中带有a.active的链接,但由于某种原因,我的jquery代码无效。有什么想法吗?
JQUERY
$('a.test').click(function() {
$('a.active').parent().parent().next().find('a').trigger('click');
});
HTML
<a class="test">link</a>
<ul>
<li id="">
<div class="page">
<a class="active" href="javascript:function Z(){Z=""}Z()">1</a>
</div>
</li>
<li id="">
<div class="page">
<a class="" href="javascript:function Z(){Z=""}Z()">2</a>
</div>
</li>
<li id="">
<div class="page">...</div>
</li>
</ul>
答案 0 :(得分:1)
您没有在要触发click事件的标记上绑定click事件,只需绑定它,您的代码就可以运行。
<强> Live Demo 强>
$('a.test').click(function () {
$('a.active').parent().parent().next().find('a').trigger('click');
});
$('li a').click(function () {
alert($(this).text());
});
答案 1 :(得分:0)
在doc ready
处理程序中调用您的点击事件:get fiddle
$(function(){
$('a.test').click(function() {
$('a.active').parent().parent().next().find('a').trigger('click');
});
});
and make sure to call the jquery library first.
答案 2 :(得分:0)
你需要在jquery范围内使用click事件处理程序而不是html中的
+你应该使用.on('click','subselector',function(){})
+你的Z函数除了清空甚至没有声明为变量的Z之外什么也不做任何事情......所以即使它点击也会触发任何事情
答案 3 :(得分:0)
请参阅:http://jsfiddle.net/FmASe/
$('a.test').click(function () {
$('a.active').closest('li').next().find('a').trigger('click');
});
$('li a').click(function () {
alert($(this).text());
});
只需绑定点击事件..