gpt4 book ai didi

jquery - 基本 var 语法 : Variable already defined?

转载 作者:行者123 更新时间:2023-12-01 06:47:56 26 4
gpt4 key购买 nike

我有以下代码,用于测试浏览器视口(viewport)中是否存在元素:

(function ($) {
$.fn.visible = function (partial, hidden, direction) {

var $t = $(this).eq(0),
t = $t.get(0),
$w = $(window),
viewTop = $w.scrollTop(),
viewBottom = viewTop + $w.height(),
viewLeft = $w.scrollLeft(),
viewRight = viewLeft + $w.width(),
_top = $t.offset().top,
_bottom = _top + $t.height(),
_left = $t.offset().left,
_right = _left + $t.width(),
compareTop = partial === true ? _bottom : _top,
compareBottom = partial === true ? _top : _bottom,
compareLeft = partial === true ? _right : _left,
compareRight = partial === true ? _left : _right,
clientSize = hidden === true ? t.offsetWidth * t.offsetHeight : true,
direction = (direction) ? direction : 'both';

if (direction === 'both') return !!clientSize && ((compareBottom <= viewBottom) && (compareTop >= viewTop)) && ((compareRight <= viewRight) && (compareLeft >= viewLeft));
else if (direction === 'vertical') return !!clientSize && ((compareBottom <= viewBottom) && (compareTop >= viewTop));
else if (direction === 'horizontal') return !!clientSize && ((compareRight <= viewRight) && (compareLeft >= viewLeft));
};

})(jQuery);

但是,当我通过 JS lint 运行此命令时,我收到一条错误,指出 direction 已定义。我的语法哪里错了?

(脚本仍然有效)

最佳答案

direction 是参数名称​​并且您在函数内使用 var Direction 定义它。

如果将上一行的逗号更改为分号,即使 direction = ... 不是 var 语句的一部分,那就没问题了。

关于jquery - 基本 var 语法 : Variable already defined?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20718118/

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