2012-01-04 62 views
0

我使用花式滑模..演示Click here通过编写JavaScript代码jQuery脚本点击链接(滑模脚本)

有在底部的导航一些标签/按钮。

当我用鼠标单击不是直接在选项卡上的链接时,我需要能够调整不同的步骤(自动点击)。

我尝试添加一个id到每个步骤,然后创建一个链接:下一个标签 然后在下面的jQuery的:

<script> 
$("#mytrigger").click(function(e) { 
e.preventDefault(); 
$("#step2").trigger("click"); 
}); 
</script> 

,但没有奏效。

UPDATE:

我把这个在一起,它不工作...我我不这样做对吗?

<a class="mytrigger" href="#">Click Here</a> 
<script> 
$('a.mytrigger').click(function(e){ 
$('#navigation li:nth-child(' + (parseInt(current)+1) + ') a').click(); 
e.preventDefault(); 
}); 
</script> 

这里是我的导航:

<div id="navigation" style="display:none;"> 
<ul> 
<li class="selected"> 
<a href="#">Step 1</a> 
</li> 
<li> 
<a href="#">Step 2</a> 
</li> 
<li> 
<a href="#">Step 3</a> 
</li> 
<li> 
<a href="#">Step 4</a> 
</li> 
<li> 
<a href="#">Step 5</a> 
</li> 
<li> 
<a href="#">Step 6</a> 
</li> 
</ul> 
</div> 
+0

使用'$(document).ready(function(){...});'''script type =“text/javascript”>'。 – Stefan 2012-01-04 15:04:41

回答

1

我真的不能够对此进行测试,但应该工作(基于插件的源):

$('a.mytrigger').click(function(e){
$('#navigation li:nth-child(' + (parseInt(current)+1) + ') a').click();
e.preventDefault();
});

“当前”变量定义在sliding.form.js中

编辑
嗯,我错了,对不起。 这里是一个工作演示:http://jsfiddle.net/dCmA7/1/
(全尺寸:http://jsfiddle.net/dCmA7/1/embedded/result/

为了让事情尽可能的简单,你不必修改导航。
创建你的链接是这样的:
a href="#step1" class="mytrigger">link

然后添加此javascript:

$("a.mytrigger").click(function(e){ 
    var index = $(this).attr("href").substr(5); 
    $('#navigation li:nth-child('+parseInt(index)+') a').click(); 
    e.preventDefault(); 
}); 
+0

您能否检查我发布的更新?似乎我可能不会这样做对吗? – Satch3000 2012-01-04 13:44:59

0

我觉得你的问题可以更容易解决,用更少的HTML。 看看my fiddle

一点解释:

  1. 我创建为onload USIG $(函数())方法的链接。我找到了所有的“李”项目,并且我在它们上面添加了“下一个”,“前一个”链接。最后,我从第一个项目中删除“prev”链接,从最后一个项目中删除“next”链接。这样我就不需要自己创建HTML元素。
  2. 我添加的每个链接都与类“next”或“prev”一致。
  3. 我“live”绑定(您可能需要使用“on”代替。语法可能会有点不同)

    与“活”的方法,我重视每一个环节上的“click”事件。处理程序根据其之前附加的“下一个”/“prev”类来操作每个链接。 对于“下一个”类,我使用JQuery中的“next”函数来获取下一个“li”元素。 对于“prev”类,我使用JQuery中的“prev”函数获取前一个“li”元素。

    请注意,在我调用“prev”或“next”函数之前,我确定我引用了包装链接的“li”对象。为此,我使用$(this)上的“closest('li')”呼叫

    让我知道是否还有其他需要的东西。