2009-08-18 12 views
0

Wie kann ich das folgende jquery idiom in YUI übersetzen?Übersetzen von jquery idiom zu YUI

$("a").click(function(event){ 
    alert("Saw a click!"); 
    }); 

Das oben genannte soll ein benutzerdefiniertes on-click-Ereignis zu allen Anker-Tags im Dokument hinzufügen.

Antwort

2

Besser zu verwenden Ereignis Delegation

YUI 3 *

Y.delegate('click', function (e) { 
    alert("Click received"); 
}, document, 'a'); 

oder

Y.get(document).delegate('click',fn, 'a'); 

YUI 2

YAHOO.util.Event.on(document,'click',function (e) { 
    var target = YAHOO.util.Event.getTarget(e); 
    if (target.nodeName && target.nodeName.toLowerCase() === 'a') { 
     alert("Click received"); 
    } 
}); 
  • die YUI 3 Beta-Version hat einen Fehler in Delegaten, der aus dem Dokument Hörer verhindert Arbeiten. Dies ist für die kommende GA-Version behoben.
5

YUI 3

Y.all('li').on('click', function() { 
     alert('Clickety-click!'); 
    }); 

YUI 2

var lis = document.getElementsByTagName("li"); 
YAHOO.util.Event.addListener(lis, 'click', function() { 
     alert('Clickety-click!'); 
    }); 

Antworten von: Translate the following jQuery code to YUI 2.x code

auch: YUI 3 unterstützt Operationen verketten, bis dann die dedchain Bibliothek von dechain.dustindiaz verwenden .com

+0

Ihr YUI2-Beispiel kann kleiner sein, wenn Sie die Zwischenvariable "lis" entfernen. – Tivac