在脚本开头声明 Jquery 变量

Declaring Jquery variables at beginning of script

本文关键字:Jquery 变量 声明 开头 脚本      更新时间:2023-09-26

我想在脚本的开头声明几个变量。据我了解,全局变量无论如何只能在函数外部创建。下面是我正在使用的代码片段。当 $map 的声明仅在位置 2 时,代码按预期执行,但当处于位置 1 时,它不起作用。除了无法对我的声明进行分组的缺点之外,我还想知道造成这种差异的原因是什么以及它有什么后果

var transMatrix = [1, 0, 0, 1, 0, 0];
var homeMatrix = [1, 0, 0, 1, 0, 0];
var $map = $('svg > g'); //1
$(document).ready(function () {
    var $map = $('svg > g'); //2
    zoomSVG($map, 2);
});

您在 1 中的方法的一个问题是,它是在 dom 准备就绪之前执行的,当时我们不确定引用的元素是否已加载,因此它可能不会返回任何元素,这是在 dom ready 回调中添加 jQuery 代码的原因。

因此,最安全的方法是添加所有尝试在 dom ready 处理程序中获取 dom 元素的变量