Сделал аналог цепочек jQuery.
код:
(function(){
var
window = this,
undefined,
jQuery = window.jQuery = window.$ = function( selector, context ) {
return new jQuery.fn.init( selector, context );
};
jQuery.fn = jQuery.prototype = {
init: function( selector, context ) {
// Если selector - объект, возвращаем его
if ( selector.nodeType ) {
this[0] = selector;
return this;
}
// В противном случае берем элемент по id
var elem = document.getElementById( selector );
var ret = jQuery( elem );
return ret;
},
// Наши функции
raz: function() {
this[0].innerHTML += 'первая пошла, ';
return this;
},
dva: function() {
this[0].innerHTML += 'вторая пошла, ';
return this;
},
tri: function() {
this[0].innerHTML += 'третья пошла ';
return this;
}
};
jQuery.fn.init.prototype = jQuery.fn;
})();
sample:
<div id='sampleid'></div>
<script type="text/javascript">
$('sampleid').raz().dva().tri();
</script>
Можно ли использовать такую реализацию цепочек? Какие могут возникнуть проблемы?