亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用方法創建jQuery插件?

如何使用方法創建jQuery插件?

慕俠2389804 2019-08-14 16:57:20
如何使用方法創建jQuery插件?我正在嘗試編寫一個jQuery插件,它將為調用它的對象提供額外的函數/方法。我在線閱讀的所有教程(過去2小時內一直在瀏覽)包括最多如何添加選項,但不包括其他功能。這是我要做的事情://通過調用該div的插件將div格式化為消息容器$("#mydiv").messagePlugin();$("#mydiv").messagePlugin().saySomething("hello");或類似的規定。以下是它歸結為:我調用插件,然后調用與該插件相關聯的函數。我似乎找不到辦法做到這一點,我見過許多插件之前做過。這是我到目前為止的插件:jQuery.fn.messagePlugin = function() {   return this.each(function(){     alert(this);   });   //i tried to do this, but it does not seem to work   jQuery.fn.messagePlugin.saySomething = function(message){     $(this).html(message);   }};我怎樣才能實現這樣的目標?謝謝!
查看完整描述

3 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

這種方法怎么樣:

jQuery.fn.messagePlugin = function(){
    var selectedObjects = this;
    return {
             saySomething : function(message){
                              $(selectedObjects).each(function(){
                                $(this).html(message);
                              });
                              return selectedObjects; // Preserve the jQuery chainability 
                            },
             anotherAction : function(){
                               //...
                               return selectedObjects;
                             }
           };}// Usage:$('p').messagePlugin().saySomething('I am a Paragraph').css('color', 'red');

所選對象存儲在messagePlugin閉包中,該函數返回一個包含與插件關聯的函數的對象,在每個函數中,您可以對當前選定的對象執行所需的操作。

您可以在此處測試和播放代碼。

編輯:更新代碼以保持jQuery可鏈接性的強大功能。


查看完整回答
反對 回復 2019-08-14
  • 3 回答
  • 0 關注
  • 541 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號