jquery - 链接在 jQuery 插件上不起作用

标签 jquery jquery-plugins method-chaining

我正在编写一个插件,从我公司的内部 API 中提取列表,一切正常,除了由于某种原因它不允许我链接其他方法。

(function( $ ) {

    $.fn.addListings = function(options){
        var defaults = {
            listingCount: 25,
            pageNumber: 1,
            customTemp: "<div class='listing'>\
            <img src='${IDXPhotoRef}'/>\
            <div class='address'>${Address}</div>\
            <div class='beds'> Beds: ${BedRooms}</div>\
            <div class='baths'>Baths: ${BathRooms}</div>\
            <div class='price'>Price: $${PriceFormatted}</div>\
            </div>",
            after: function(){}
        }

        var settings = $.extend({}, defaults, options );

        $.ajax({
          type: 'GET',
          // url: '/api/listings/?featuredlistings=1&pagesize=' + settings.listingCount + '&pagenumber=' + settings.pageNumber + '',
          url:'data.json',
          contentType: 'text/plain',
          crossDomain: true,
          context: $(this)
          })
        .done(function(data) {
            $.template("customTemp", settings.customTemp);
            var arrData = $.map(data[0], function(el) { return el; });
            for(i=0; i<arrData.length; i++){
                $.tmpl("customTemp", arrData[i]).appendTo(this);
            }

          })
        .always(function(){
            settings.after();
          });

    };

    return this;

    }( jQuery ));

https://github.com/cjthedizzy/jquery.addListingsJS/blob/master/jquery.addListings.js

最佳答案

return this 需要放置在 $.fn.addListings block 内:

(function($) {
    $.fn.addListings = function(options){
        // var defaults = {
        // ... rest of the code...

        return this;
    };
}(jQuery));

关于jquery - 链接在 jQuery 插件上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28815772/

相关文章:

jquery - jQzoom IE9 Bug - 错误

JQuery 验证未验证

javascript - 这是在 javascript 中实现链接的正确方法吗?

java - 方法链警告

javascript - 使用 jQuery 1.8.3 切换

JavaScript 检测页面底部在 Chrome 上则相反

javascript - 为什么从其他网站返回时会留下最后一个哈希值,同时显示第一个哈希值的内容?

javascript - 动态创建一个类以在模态中使用

javascript - jQuery locationpicker 输入样式背景和焦点

Golang 接口(interface)方法链接