Jquery无法处理插件生成的html标记

Jquery无法处理插件生成的html标记,jquery,dom,rss,Jquery,Dom,Rss,我正在开发一个简单的RSS聚合器站点,它基本上解析一组RSS提要并将它们显示在一系列框中。我正在使用RSS插件 您可以在此处看到该网站的实时版本: 我遇到的问题是使用jquery选择插件生成的DOM对象。更具体地说,当您使用以下jquery将鼠标悬停在页面上的任何链接上时,我尝试在锚链接旁边显示社交图标: $(document).ready(function(){ $('a').hover(function(){ $('<a href="#">

我正在开发一个简单的RSS聚合器站点,它基本上解析一组RSS提要并将它们显示在一系列框中。我正在使用RSS插件

您可以在此处看到该网站的实时版本:

我遇到的问题是使用jquery选择插件生成的DOM对象。更具体地说,当您使用以下jquery将鼠标悬停在页面上的任何链接上时,我尝试在锚链接旁边显示社交图标:

$(document).ready(function(){

        $('a').hover(function(){
            $('<a href="#"><img src="images/facebook.gif" class="facebook" alt="facebook"></a>').appendTo(this).fadeIn(500);
            $('<a href="#"><img src="images/twitter.gif" class="twitter" alt="twitter"></a>').appendTo(this).fadeIn(500);

        }, function(){
            $('a').find('.facebook,.twitter').stop().fadeOut(500);
        });
    });
$(文档).ready(函数(){
$('a')。悬停(函数(){
$('').appendTo(this).fadeIn(500);
$('').appendTo(this).fadeIn(500);
},函数(){
$('a').find('.facebook.twitter').stop().fadeOut(500);
});
});

由于某些原因,此jquery将无法与页面上的锚一起工作。该插件使用jquery脚本生成a标记,该脚本位于我的HTML文档中该脚本的上方。我似乎不明白为什么这不起作用!!!我尝试过各种jquery代码片段,它们可以在页面的其他元素上工作,但是插件生成的内容似乎不受任何jquery的影响。救命啊

这不起作用,因为自第一次呈现页面以来DOM已更改,因此需要使用
live()
方法。它允许已经存在的JQuery函数仍然以生成的元素为目标

您应该使用或方法将事件绑定到初始渲染后添加到DOM中的元素。

如果您只需要提要的链接来附加事件,还可以在加载提要后使用zRSSFeed的回调函数应用它们

例如:

$(document).ready(function () {
    $('#test').rssfeed('http://feeds.bbc.co.uk/iplayer/highlights/tv/list',{}, function(e) {

        $(e).find('div.rssBody a').hover(function() {
            $('<a href="#"><img src="images/facebook.gif" class="facebook" alt="facebook"></a>').appendTo(this).fadeIn(500);
            $('<a href="#"><img src="images/twitter.gif" class="twitter" alt="twitter"></a>').appendTo(this).fadeIn(500);

        }, function(){
            $('a').find('.facebook,.twitter').stop().fadeOut(500);
        });

    });
});
$(文档).ready(函数(){
$('#test').rssfeed('http://feeds.bbc.co.uk/iplayer/highlights/tv/list“,{},函数(e){
$(e).find('div.rssBody a').hover(函数(){
$('').appendTo(this).fadeIn(500);
$('').appendTo(this).fadeIn(500);
},函数(){
$('a').find('.facebook.twitter').stop().fadeOut(500);
});
});
});

如果您将鼠标悬停在徽标链接上,您可以看到它正在工作,但不会看到其他链接。不过,当您处理悬停事件时,请使用以下代码: