2016-03-15 84 views
0

如何選擇一個DOM元素和鏈條的一系列行動,以這樣的元素:擴展DOM元素的功能

_my('#maindiv').move(100, 250).fadeOut(1000) 

我意識到jQuery和其他庫的主機上面做,但我在有點損失...

實際的實現是沒有必要的,只是選擇和鏈接的基本框架。

+0

你去向下延伸的DOM元素的路線前,請閱讀[*有什麼不好延長DOM *](http://perfectionkills.com/whats-wrong-with-extending-the-dom/) 。一旦你吸收了這些,你就會發現你需要一個「包裝器」對象,它具有你想要的所有擴展並將它們應用到與該對象相關的一組元素。在那個階段,你已經開始複製大多數當前DOM庫使用的接口策略。 – RobG

回答

-1

使用jQuery你可以鏈方法:

$('#maindiv') 
    .css({left: 100, top: 250}) 
    .fadeOut(1000) 
    .addClass('.foo') 
    .toggleClass('.inactive', $(this).is(':checked')) 
; 

檢查這些方法裏面看到如何讓鏈接。

一般而言,您可以製作像function _(selector)這樣的函數,它返回所選元素對象及其所有新函數。

function _(selector) { 
    var obj = { 
     el: document.getElementById(selector), 
     css: function (attributes, values) { 
      /* ... */ 

      return obj; 
     }, 
     fadeOut: function (speed) { 
      /* ... */ 

      return obj; 
     } 
    }; 

    return obj; 
} 
+0

他不在尋找jQuery,他正在尋找一種方法來做一個類似的鏈接自己。 – 2016-03-15 07:40:46