【问题标题】:how do I add custom function to zepto?如何将自定义功能添加到 zepto?
【发布时间】:2011-12-28 05:41:22
【问题描述】:

zepto 新手(老实说,远非 jQuery 高手), 我想添加一个自定义函数。

这是我目前的尝试:

//define..
$.fn.doSearch = function() { 
  alert(this.parentNode.html());
  //now xhr..
}
//assign..
$('#resetBtn').click( function (e) {$(this).doSearch()});

//define
<script type="text/ja..
function doSearch(obj) {
  alert('Ugly way but here I am');
}

//assign..
$('#resetBtn').click( function (e) {window.doSearch()});

两者都不起作用..我宁愿走第一条路线,因为 .fn 未列在 zepto-docs 中。

问候,

//t

【问题讨论】:

    标签: zepto


    【解决方案1】:

    好的,现在我有

    //define
    var myFunc = {
      doSearch: function(obj) {
        //just check obj is ok.
        alert($(obj.parentNode).html());
      }
    }
    //correct way to extend zepto?
    $.extend($,myFunc);
    
    //assign...
    $('#searchBtn').click( function (e) {$(this).doSearch(this)});
    

    这是要走的路吗?

    【讨论】:

    • 在 Jquery 中,如果你使用 $.fn.myFunc,myFunc 将成为一个可以在元素上轻松调用的插件。所以虽然这很相似,但它与 $.fn.myFunc 并不完全相同。如果您不必将对象传递到您的函数中,那就太好了,而可以像 Jquery 插件一样调用它。我仍在寻找正确的方法来自己做这件事......
    【解决方案2】:

    如文件所述,

    (function($){
      $.extend($.fn, {
        foo: function(){
          // `this` refers to the current Zepto collection.
          // When possible, return the Zepto collection to allow chaining.
          return this.html('bar')
        }
      })
    })(Zepto)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多