jquery - 什么取代了已弃用的属性 this.selector

标签 jquery jquery-plugins jquery-selectors

在创建我的第一个 jQuery 插件时,我想在插件代码中使用仅限于最外层选择器的选择器。 this.selector 非常完美。然而,它正在被拿走。 :/因此,我不想使用最佳实践来编写折旧的属性。

我想确保只影响选择器中的项目。现在我的插件有疯狂的溢出。我的 var panelCount 当然是计算整个页面的隐藏和循环次数,等等。

剪掉...

    var defaults = {
        displayCount: 2,
        startIndex: 0,
        panelClass: "panels",
        hoverClass: "hover",
        rounded: false
    },
    settings = $.extend({}, defaults, options);
        var panelCount = $("." + settings.panelClass).length; //needs restraints

我使用以下调用来尝试确保链接有效。

$('.DisplayWall').metro({displayCount:2,hoverClass:"hover"}).css("color","red");

我有一个fiddle here .

最佳答案

this.selector 的替换是不依赖于正在使用的选择器,而是使用选定的元素。因此,您应该重新实现 this.each(),然后根据实例正确过滤您的选择。

this.each(function () {
    var $this = $(this);

    $('.next',this).click(function () {

    $('.previous',this)

    $("." + settings.panelClass,this)

    //etc...

})

http://jsfiddle.net/y9pEV/8/

现在,如果您有两个 DisplayWall 元素,它们将独立工作。

不要忘记,在 SetDisplay 内部,this 是 Window。

关于jquery - 什么取代了已弃用的属性 this.selector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21238281/

相关文章:

javascript - jquery 无法获取元素的类名

php - jquery ajax文件上传

jquery - 在同一表行中获取下一个下拉组合框的最佳 jquery 选择器是什么

javascript - 获取$_GET数据后滚动到span id

javascript - 如何根据我从ajax获得的json在select上添加禁用的select属性

jquery - 调整浏览器大小时的导航菜单宽度

Jquery 代码可以在 JsFiddle 上运行,但不再可以在我的电脑上运行

javascript - 电子邮件输入未将电子邮件地址作为时事通讯订阅框中的有效输入

javascript - Jquery获取实例并将其写入输入字段

javascript - 在 url 中使用 # 打开 html div 元素