0

だから私は BigCommerce プラットフォームで作業しており、ページ上の特定のラベルの背景画像を変更しようとしています. これらの特定の要素の HTML を編集できないため、CSS だけではできません。これを達成しようとしているページへのリンクは次のとおりです。

http://weddingsflowerpetal.mybigcommerce.com/a-vintage-affair-bouquet/

「白」、「黒」、「赤」などのラベルの背景を変更しようとしています。現在、次のコードがあります。

 document.getElementById("7eff70453e41b167e40002762d6195d7").style.backgroundImage="url('http://weddingsflowerpetal.mybigcommerce.com/templates/__custom/images/ribbons/blackribbon.png') no-repeat left";

そして、ラベル要素ごとに 1 つ用意して、それぞれを適切な画像に変更します。コードをページに挿入すると、JS エラーは発生しませんが、画像は変更されません。

これについての助けをいただければ幸いです。私の問題の解決策ではない場合、まだ検討していない簡単な方法はありますか?

4

2 に答える 2

0

私はW3Cが「IDトークンとNAMEトークンは文字([A-Za-z])で始まらなければならない」と言っていることから始めます。 。そこからデバッグを開始します。

于 2012-05-28T05:22:40.937 に答える
0

backgroundImageJSでプロパティを設定しているが、URLの後に他のCSSテキストを追加しているためだと思います。document.getElementById("7eff70453e41b167e40002762d6195d7").style.background='...'またはする必要があります

document.getElementById("7eff70453e41b167e40002762d6195d7").style.backgroundImage='url...'; その後 document.getElementById("7eff70453e41b167e40002762d6195d7").style.backgroundPosition='left';document.getElementById("7eff70453e41b167e40002762d6195d7").style.backgroundRepeat='no-repeat';

ただし、WebサイトがjQueryを使用していることに気付きました。したがって、次のようなことができる可能性があります。

$(document).ready(function() {
    $("input[id='7eff70453e41b167e40002762d6195d7']")
        .css("background-image", "url('http://weddingsflowerpetal.mybigcommerce.com/templates/__custom/images/ribbons/blackribbon.png')")
        .css("background-repeat", "no-repeat")
        .css("background-position", "left top");
});

liまたはあなたはそれを親に置くことを試みることができます

$(document).ready(function() {
    $("input[id='7eff70453e41b167e40002762d6195d7']").closest("li")
        .css("background-image", "url('http://weddingsflowerpetal.mybigcommerce.com/templates/__custom/images/ribbons/blackribbon.png')")
        .css("background-repeat", "no-repeat")
        .css("background-position", "left top");
});
于 2012-05-28T05:24:11.077 に答える