使用for循环来识别html .classes(jQuery)

时间:2016-01-17 13:19:00

标签: javascript php jquery html for-loop

我使用simplepie来输入两个RSS Feed。使用PHP foreach循环,然后echo .story_overview每个Feed帖子在类.pin中包含的信息,并为每篇文章添加foreach类。我在PHP hide.story_overview.story_overview中使用了jQuery,并在.pin和相应的<script> $('.story_overview').hide(); $('.pin').attr('class','pin' + i); $('.story_overview').attr('class','story_overview' + i); i++; </script> 类的末尾添加了一个唯一的标识号,这是有效的:

.pin

我试图达到悬停在.story_overview上的所需结果,揭示相应的.pin1所以.story_overview1会显示for )。我目前正在尝试使用JavaScript <script> for (x = 0; x <= i; x++){ $('.pin'+ x.toString()).mouseover(function(){ $('.story_overview' + x.toString()).show(); }); $('.pin'+ x.toString()).mouseout(function(){ $('.story_overview' + x.toString()).hide(); }); }; </script> 循环执行此操作,但它拒绝使用:

x.toString

我已经通过尝试相同的代码测试了所有jQuery命令,但是在类名末尾使用标识号(而不是for )并将代码放在{{1}}循环,一切正常。

任何帮助,非常感谢!提前谢谢。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

  $('.pin').mouseover(function(){
            $('.story_overview').eq($(this).index()).show();
   }).mouseout(function(){
            $('.story_overview').eq($(this).index()).hide();
   }); 

您可以使用.eq()方法和.index()来获得所需的输出,以获取悬停元素的索引。

或者你可能会喜欢这个:

  $('.pin').mouseover(function(){
            $('.story_overview'+$(this).index()).show();
   }).mouseout(function(){
            $('.story_overview'+$(this).index()).hide();
   });