gpt4 book ai didi

jQuery 仅当我将其粘贴到控制台时才起作用

转载 作者:行者123 更新时间:2023-12-01 05:05:03 28 4
gpt4 key购买 nike

我正在开发一个 Chrome 扩展程序,并且我调用的 click() 方法只有在将其粘贴到扩展程序检查器的控制台后才有效。

标记如下:

<ul id="results-list">
<li><a href="#">something</a></li>
<li><a href="#">something</a></li>
... and so on ...
</ul>

所以,真的,没什么特别的。然而,那些<li><a>...</a></li>是根据表单提交返回的 json 数据填充的。所以,我认为这与 onReady() 中不存在的元素有关,但我多次尝试将匿名方法(如下)放在 onReady 内部、onReady 外部以及 onSubmit 内部和外部,但仍然没有运气.

我的 jQuery 如下:

$(document).ready(function(){
$('form').submit(function(){
... make the JSON request & populate the form ...
});
$("#results-list a").click(function(){
$('body').width(600);
return false;
});
});

有人对此有任何见解吗?我想这要么是我的 .click() 的位置方法,或者我不知道的 Chrome 扩展程序陷阱。

谢谢!

最佳答案

将您的事件移至回调中,因为您尝试访问的 DOM 部分在从服务器返回之前不可用:

$(document).ready(function(){
$('form').submit(function(){
// ... make the JSON request & populate the form ...

$.ajax({
url: yourUrl,
data: yourData,
success: function(data) {
// Build your list and then:
$("#results-list a").click(function(){
$('body').width(600);
return false;
});
}
});
});
});

关于jQuery 仅当我将其粘贴到控制台时才起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6638446/

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