Javascript 将jQuery应用于由jQuery创建的元素时出现问题

Javascript 将jQuery应用于由jQuery创建的元素时出现问题,javascript,jquery,Javascript,Jquery,这是我的密码: $("#ticker-wrapper").rssfeed("http://news.hse.gov.uk/feed/", { limit: 5, linktarget: '_blank', titletag: 'p', snippet: false, header: false, date: false, content: false }); $('#js-news').ticker({ controls: fal

这是我的密码:

$("#ticker-wrapper").rssfeed("http://news.hse.gov.uk/feed/", {
    limit: 5,
    linktarget: '_blank',
    titletag: 'p',
    snippet: false,
    header: false,
    date: false,
    content: false
});

$('#js-news').ticker({
    controls: false,
    titleText: ''
});
基本上,一个rssfeed被放置在包装器中,然后我希望.ticker为.rssfeed拉过的项目添加一个ticker效果

问题似乎是.rssfeed创建了id#js news(我想在这里应用.ticker)。那么.ticker似乎在#js news创建之前就被解雇了。实际上,它似乎试图将.ticker应用于尚未创建的元素,结果什么也没有出现

我一直在研究jQuery.live(),我可以在一个click命令上获得所有代码。但是我需要创建rss提要,并在页面加载时应用ticker。不太确定该怎么办

------编辑------

啊哈

现在它似乎可以工作了。我已将main.rssfeed块移到html中(从.ready中取出),并重写了代码:

var tickerTryCount = 0;
function addTicker() {
if (tickerTryCount < 5) {
    if ($('#js-news').size() > 0) {
        $('#js-news').ticker({
            controls: false,
            titleText: ''
        });
    } else {
        tickerTryCount++;
        setTimeout(addTicker, 1000);
    }
}
}
var tickerTryCount = 0;
function addTicker() {
if (tickerTryCount < 5) {
if ($('#js-news').size() > 0) {
    $('#js-news').ticker({
        controls: false,
        titleText: ''
    });
} else {
    tickerTryCount++;
    setTimeout(addTicker, 1000);
}
}
}
var tickerTryCount=0;
函数addTicker(){
if(tickerTryCount<5){
如果($('#js news').size()>0){
$(“#js新闻”).ticker({
控件:false,
标题文本:“”
});
}否则{
tickerTryCount++;
设置超时(addTicker,1000);
}
}
}
在ajaxStop()上调用ticker()

啊哈

现在它似乎可以工作了。我已将main.rssfeed块移到html中(从.ready中取出),并重写了代码:

var tickerTryCount = 0;
function addTicker() {
if (tickerTryCount < 5) {
    if ($('#js-news').size() > 0) {
        $('#js-news').ticker({
            controls: false,
            titleText: ''
        });
    } else {
        tickerTryCount++;
        setTimeout(addTicker, 1000);
    }
}
}
var tickerTryCount = 0;
function addTicker() {
if (tickerTryCount < 5) {
if ($('#js-news').size() > 0) {
    $('#js-news').ticker({
        controls: false,
        titleText: ''
    });
} else {
    tickerTryCount++;
    setTimeout(addTicker, 1000);
}
}
}
var tickerTryCount=0;
函数addTicker(){
if(tickerTryCount<5){
如果($('#js news').size()>0){
$(“#js新闻”).ticker({
控件:false,
标题文本:“”
});
}否则{
tickerTryCount++;
设置超时(addTicker,1000);
}
}
}

您使用哪个插件?也许你可以设置一个回调…是的,rssfeed方法在做什么?这是哪个插件?非常感谢您的回答!尽管如此,测试代码似乎不起作用。目前,我已经用冗长的方式编辑了我的原始问题。但我目前正在深入研究.ajaxStop(以前从未使用过它)。没有人喜欢突兀的javascript:(我会寻找一种更好的方法来实现这一点