ここでフロントエンドの開発を始めたばかりですが、私の確かに悪い習慣にもかかわらず、私は物事をとても楽しんでいます。onclick
基本的に、ページの読み込み時に要素に関数を追加しようとしています。次のように正常に機能していました。
$("li a:contains('Search')").ready(function(){
$("li a:contains('Search')").on("click", function(){
$("li a:contains('Search)").text("test")});
});
しかし、私のプログラマーのスパイディ感覚は、このコードの非常に率直に言ってひどい状態によって強く活性化されたので、リファクタリングを試みました。
function replaceWithSearch(element){
element.text("test");
}
$("li a:contains('Search')").ready(function(){
$("li a:contains('Search')").on("click", replaceWithSearch($("li a:contains('Search')")));
});
しかし、それに変更すると、onclick
機能がすぐに起動するようになりました。関数がコールバックとして呼び出されたときにのみ評価されるようにする方法はありますか? また、コードのリファクタリングやベスト プラクティスについて他にコメントがあれば、ぜひお聞かせください。繰り返しになりますが、Javascript を使い始めたばかりなので、いくつかの優れたプラクティスを構築したいと思っています。