2015-03-25 89 views
0

我正在制作一个网站的标签,我设置jQuery来运行功能,当任何属性被点击(这只是测试选择器,并不是所有的属性将在最终的网站使用)。我进入某个div后没有选择任何属性。 下面是HTML:为什么jQuery不选择所有的属性元素?

<div id="content" class="content"> 
    <div id="image" style="border:2px solid;float:left">...</div> 
    <div id="backgroundInfo" style="margin-left: 5px;float:left">...</div> 
    <br> 
    <div id="medBackground" style="margin-left: 5px">...</div> 
    <div id="tabs" class="tabs"> 
     <a> Clowns</a> 
     <ul class="tab-links"> 
       <li class="active"><a href="#tab1">03/05/2001</a></li> 
       <li><a href="#tab2">06/05/2007</a></li> 
     </ul> 
     <div class="tab-content">...</div> 
    </div> 
</div> 

名单是使用while循环产生。除div(class = tabs)中的属性外,所有属性都被选中。 这里是jQuery的:

jQuery(document).ready(function() { 
    jQuery('a').on('click', function(e) { 
     var currentAttrValue = jQuery(this).attr('href'); 

     // Show/Hide Tabs 
     jQuery('.tabs ' + currentAttrValue).show().siblings().hide(); 

     // Change/remove current tab to active 
       jQuery(this).parent('li').addClass('active').siblings().removeClass('active'); 

     e.preventDefault(); 
    }); 
}); 

我得到了这样的代码:http://inspirationalpixels.com/tutorials/creating-tabs-with-html-css-and-jquery#step-jquery 如果有人可以帮我找出什么错误,这将是真棒。我以简化的形式工作,但没有在我的主要网站上工作。

+0

http://jsfiddle.net/arunpjohny/w788e8t4/ 1/- 有什么问题 – 2015-03-25 03:06:30

+0

http://jsfiddle.net/arunpjohny/w788e8t4/2/ – 2015-03-25 03:08:26

+0

你的主网站上发生了什么?它什么都不做?如果您使用萤火虫或Chrome开发人员工具查看脚本的脚本(如果它停止,否则您可能遇到选择问题),也许最好。 – 2015-03-25 03:12:55

回答

0

我想你使用的。对()方法错了动态生成的列表, 尝试

jQuery(document).on('click', 'a', function(e){ 
    //your code 
}); 

而不是

jQuery('a').on('click', function(e) { 
    //your code 
}); 
+0

我试过这个,没有选择任何属性。 – 2015-03-25 12:38:14

+0

编辑它,这应该现在工作 – Jasper 2015-03-25 12:44:37

+0

是的这工作!非常感谢!我认为它必须处理动态生成的列表。 – 2015-03-25 13:54:41

相关问题