gpt4 book ai didi

javascript - Jquery ajax facebox

转载 作者:行者123 更新时间:2023-11-30 18:48:36 26 4
gpt4 key购买 nike

我有一个“实时搜索”类型的页面,它使用 ajax 调用另一个页面来检查输入的有效性。它会返回一张图像,您可以单击该图像以查看有关该产品的更多信息。该图像具有 rel="facebox"属性,这意味着在单击时会显示一个带有 div 信息的 facebox。但是,我必须单击图像两次才能加载 facebox。这是我正在使用的 Jquery 实时代码:

            jQuery(document).ready(function($) {

$('a[rel*=facebox]').live("click", function() {
$(this).facebox();
});
});

提前致谢!

最佳答案

发生了什么,你正在初始化 facebox onclick。第一次调用将向 click 事件 添加句柄以打开 facebox,因此如果您在收到这些实时结果时没有执行此操作的回调,则必须执行类似这个:

$('a[rel*=facebox]').live("click", function() {
$(this).unbind("click").facebox().trigger("click");
return false;
}

但这是丑陋的 :-(。甚至,当您使用“实时”时,事件可能会在某些新元素到达时重新绑定(bind)到元素:S您可以使用 console.log 验证这一点。

一种更简洁的方法是向 facebox 添加一个 init 属性,称为 autoStart 或类似的东西,它将初始化 facebox,并在相同的函数中打开它。

祝你好运!

关于javascript - Jquery ajax facebox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4634292/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com