良い古いJavaScriptを使用してこれを行う方法は知っていますが、コードを減らしてjQueryの理解を深めるために、ここに '問題があります:JQueryの.eachを使用してフォームアイテムをループし、srcを.replaceで変更する
私はすべてがSRC属性を含む画像と入力のコレクションを持っていますが、これらはすべて#popupFormという親DIVに含まれています。 .eachメソッドを使用してフォームアイテムをループしたい(スタイリング用の子DIVにあるものもあれば、一部は文字列の一致に応じてSRCの一部を置き換える) - 私はこれをやりたいのですが、私は数多くのテーマを持つサイトを持っています。ここに私がこれまで持っていたものがあります。
var thisTheme = $("hiddenTheme").val(); // this is a theme variable
var $inputs = $('#popupForm :input'); // need to later add images here too
$inputs.children().each(function() {
$this.attr("src") = $this.attr("src").replace('whatIwantToReplace', thisTheme);
});
これはかなり単純です。どんな助けもありがとうございます。
更新
が、これはすべての次
// theming script
var thisTheme = $("#hiddenTheme").val();
var defaultTheme = "/midway/"
$('#popupForm img').each(function() {
var thisSRC = $(this).attr('src');
if (thisSRC.indexOf(defaultTheme) !== -1) {
var new_src = $(this).attr('src').replace(defaultTheme, thisTheme);
$(this).attr('src', new_src);
}
});
... – lonesomeday
@lonesomeday:
最後に、コードが完全に
each
ループを避け、このように、よりきれいに書き直すことができると彼と彼:D "何かをする"に編集:D @Mike Sav:今すぐお試しください:) – Shrinathこの作品は次のコードで入手しました –