gpt4 book ai didi

javascript - 在 Safari 中使用 jQuery 的变量赋值失败?

转载 作者:行者123 更新时间:2023-11-30 13:43:02 27 4
gpt4 key购买 nike

我正在使用 jQuery 1.3.2,但出于神秘原因,它在 Safari 4 下无法运行。

我所有的 javascript 引用都是在标记之前进行的,但代码如下:

var status = $('#status');

status.change( function(){ /* ... */ } );

Web 检查器中显示以下错误:

TypeError: Result of expression 'status.change' [undefined] is not a function.

但是,如果我像这样消除变量赋值,直接附加更改方法,就不会遇到错误:

$('#status').change( function(){ /* ... */ } );

为什么?我需要为这个和其他几个 findById 引用使用变量,因为它们在脚本中多次使用,并且每次都为每个元素爬行 DOM 被认为是不好的做法。它不应该找不到元素,因为 javascript 是在除 and 之外的所有内容之后加载的。

最佳答案

尝试将变量更改为“状态”以外的其他内容。

它混淆了您的变量与 window.status(状态栏文本)。当我在调试控制台中键入 var status = $('#status') 时,状态栏变为 [Object object]。 一定是 Safari 中的错误。

如果将代码放在一个函数中,使 status 成为一个函数局部变量,它应该可以工作。

关于javascript - 在 Safari 中使用 jQuery 的变量赋值失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1234453/

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