Joachim: jQuery - Objekte aneinander hängen

Beitrag lesen

hi,

jQuery.fn.myfilter = function(str)
   {
   var retObj = {};
   $(this).find(str).each(function()

Es gibt bei jquery einen Artikel zum Plugin-Authoring, den solltest Du dringend lesen. Wichtig ist immer die dieser Aufbau:

return this.each(function() {
            ...
        });

damit die Verkettung der Methoden erhalten bleibt. Dein Versuchaufbau, der also alle Elemente der Klasse "hallo" unterhalb bestimmter Eltern rausfiltert sähe in Kurzform etwa so aus:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="HIER DEIN JQUERY"></script>
<script type="text/javascript">
(function($){
    $.fn.myfilter = function(str) {
        return this.each(function() {
            $(this).find(str + ".hallo").each(function() {
                $.myfilter.store.push( $(this).html() );
            });
        });
    };
    $.myfilter =  {
        store:[]
    };
})( jQuery );

$(document).ready(function(){
    $("div").myfilter("p");
    alert($.myfilter.store.toSource())
});
</script>
</head>
<body>
    <div>
        <p>2</p>
        <p class="hallo">3</p>
        <p>4</p>
        <p class="hallo">5</p>
    </div>
    <div>
        <p>x</p>
        <p class="hallo">y</p>
        <p class="hallo">z</p>
    </div>
</body>
</html>

Gruesse, Joachim

--
Am Ende wird alles gut.