0

私は最近 Web サイトを開発しています。ユーザーが背景画像を変更できるように、サイトのオプションを開発しました。

以前は Windows 7 と XP を使用していましたが、背景画像の変更は win 7 と XP の Internet Explorer の両方で機能しましたが、最近、IE 10 に付属する Windows 8 に移動し、IE 10 でサイトをテストすると、背景画像の変更が機能しません。

なぜこれらの人たちはこれらのものを変えているのですか?この件はどうでもいいのですが、それでも IE を使っている人はいます。:(

ここに私のコードがあります

 var body = document.getElementsByTagName("body")[0];
 body.style.backgroundImage = "url(" + picurl + ")";

IE 10 でどのようにできるか考えていますか?

4

3 に答える 3

1

あなたが提供したコードはIE10で私のために働いています。URLにスペース文字が含まれている場合は、これを試してください

body.style.backgroundImage = "url('" + picurl + "')";
于 2013-03-29T14:41:14.383 に答える
1

あなたが引用したコードは私にとってはうまくいきます。

私はそれを証明するためにjsFiddleを実行しました - http://jsfiddle.net/Ryavz/

var picurl = "http://static.travelblog.org/Wallpaper/pix/waterfall_desktop_background-1600x1200.jpg";  //just a random image I found on the web
var body = document.getElementsByTagName("body")[0];
body.style.backgroundImage = "url("+picurl+")";

上記のコードは、IE10 や他のブラウザーでも同じように機能します。

IE10 のサイトに特定の問題がある場合、それは引用したコードではありません。

URLにスペースやブラケットなどが含まれている場合は、おそらくurl()スタイルパラメーターに引用符を追加する必要がありますが、それ以外はコードに問題がなく、引用符の有無にかかわらずすべてのブラウザーで機能します.

于 2013-03-29T14:43:31.993 に答える
1

画像が事前にわかっている場合は、CSS ファイルのクラスで指定し、新しいクラスを追加するだけでメンテナンスが軽減されます。jQuery の場合:

$(body).addClass('my-bgd-class');

ただし、変数を使用しているため、次のようにします。

$(body).css('background-image', 'url("' + picurl + '")');
于 2013-03-29T14:37:12.703 に答える