在第三方窗口中执行jQuery(原型)

时间:2011-10-12 14:03:35

标签: javascript jquery prototypejs

这是我多年来的主要问题,我从来没有得到100%的答案(在某些情况下,我设法做我想要的),现在我意识到我需要一个正确的100%答案才能继续。

我正在运行Prototype-UI(可拖动窗口和东西),我需要知道如何在使用Ajax获取内容的同时在这些窗口内运行jQuery脚本。

以下是一个对我有用的例子:

             window.show_confirm = function(id) {
        var r = confirm("huhuhu");
        if (r == true) {
            jQuery.post('huhuhu.php', {'id':id}, function(data){});
              jQuery('#_'+id).animate({
        height: "0px",
        opacity: 0.0,
      }, 1500 );

        } else {
            alert("Item ["+id+"] was not deleted.");
        }

}

这是一个不起作用的例子:

jQuery(function() {
jQuery(".line").peity("line");
});

现在,工作示例需要单击才能运行该功能(这样用户只能在打开窗口后运行它。)

在第二种情况下,此函数需要从文档准备好的那一刻开始运行(基本上当它执行时仍然没有带.line类的DOM。)

任何帮助?

1 个答案:

答案 0 :(得分:0)

我对你要问的内容感到有些困惑,但从最后一部分开始,我假设它是如何调用一个jQuery函数而创建的还不存在。

jQuery是一个命令式库,而不是声明性库 - 通常它只对当前存在的元素进行操作(“live”事件处理程序除外,但是不是你的用例)。在以某种方式创建匹配元素之后,您需要进行调用 - 通过在AJAX请求之后执行调用,或者使用类似livequery的内容来拦截DOM元素创建。