prelude:私はこのコードが醜いと確信していますので、より良い方法を提案してください。このjqueryコードを純粋なjavascriptに変更するにはどうすればよいですか?
目標:特定の製品(ベルト)のさまざまな構成をプレビューする小さなウェブストアを作成します。 http://solomongiles.com/demos/deadcowbelts/choose-a-belt/trial2.html
とここに私の醜いjQueryの:
あなたはここで働いバージョンを見ることができる(例えば、金と赤のベルトなど、銀のバックルと赤のベルトバックル対)。
$(document).ready(function(){
$("img").addClass("hide");
$("img.belt-black").removeClass("hide");
$("img.buckle-gold").removeClass("hide");
$("img.coins-gold").removeClass("hide");
$("input.belt-black").click(function(event){
$("img.belt-black").removeClass("hide");
$("img.belt-brown").addClass("hide");
$("img.belt-red").addClass("hide");
});
$("input.belt-brown").click(function(event){
$("img.belt-black").addClass("hide");
$("img.belt-brown").removeClass("hide");
$("img.belt-red").addClass("hide");
});
$("input.belt-red").click(function(event){
$("img.belt-black").addClass("hide");
$("img.belt-brown").addClass("hide");
$("img.belt-red").removeClass("hide");
});
$("input.buckle-gold").click(function(event){
$("img.buckle-gold").removeClass("hide");
$("img.buckle-silver").addClass("hide");
});
$("input.buckle-silver").click(function(event){
$("img.buckle-gold").addClass("hide");
$("img.buckle-silver").removeClass("hide");
});
$("input.coins-gold").click(function(event){
$("img.coins-gold").removeClass("hide");
$("img.coins-silver").addClass("hide");
});
$("input.coins-silver").click(function(event){
$("img.coins-gold").addClass("hide");
$("img.coins-silver").removeClass("hide");
});
});
ありがとうコミュニティ!あなたは素晴らしい。 :)
JON
なぜjQuery以外のJavaScriptを書き直したいのですか? – smack0007
一種の奇妙な要求。あなたがjquery(あなた自身のコードを '醜い'と記述している)をしっかり把握していないなら、純粋なjavascriptはさらに難しいです。あなたはjqueryを捨てて何を達成しようとしていますか? –
まあ、事は:私はこのサイトを設計しているクライアントは本当に古いmacを所有し、彼のバージョンのSafariは私が構築したデモを実行しません。問題はjqueryに依存しているように思えます。私は画像からjqueryを削除すると、より多くのクロスブラウザになることを望んでいます。 :) –