Ich habe ein Div, das ich anzeigen oder ausblenden möchte, je nachdem, ob ein Hyperlink angeklickt wird. Dies erfordert offensichtlich keine serverseitige Interaktion. Aber gibt es eine Möglichkeit, dies mit den Prototyp-Helfern von Rails zu tun? Oder sollte ich einfach JQuery oder reines Javascript verwenden, um diese Art von clientseitiger Manipulation durchzuführen?Ist eine reine clientseitige Dom-Manipulation mit Hilfe des Prototyp-Helpers von Rails möglich?
Antwort
Sie sollten unbedingt jQuery verwenden. Der beste Grund ist, weil, wie wenig Code ist:
$("a.myLink").click(function() { $("#myDiv").toggle() });
Im Interesse der Vollständigkeit, würde die Prototyp-Version sein:
$("mylink").observe("click", function() { $("mydiv").toggle(); });
— Wo „mylink“ und „mydiv“ ist das Element IDs des Hyperlink- bzw. div-Elements.
Danke. Etwas ausführlicher. Aber nicht so viel, wie ich von all dem Gerede darüber, wie präzise JQuery ist, erwartet habe. –
Ja ... es ist kein großer Unterschied zu trivialen Dingen, weil Prototype in den letzten Iterationen die triviale Syntax ziemlich nahe an die von jQuery gebracht hat. Es summiert sich jedoch zu größeren Anwendungen. –
Danke. Ich war mir nicht sicher, ob dies gegen die Art und Weise, wie Rails die Dinge machte, zuwiderlief. –
Überhaupt nicht :) Fast alle seriösen Rails-Anwendungen verwenden benutzerdefiniertes JavaScript. Die eingebauten Helfer sind nur dazu da, um schnell loszulegen. –