0

ユーザーが16進値を入力できるようにするフォームを作成する必要があり、クリックするとその色が適用されます。背景画像が既に選択されていない限り、Firefox で動作しますが、IE ではまったく動作しません (驚き) 最初に背景画像を削除する必要があると思います。これは私がこれまでに持っているものです

脚本

$("#newBodyColorBtn").click(function() {
    $("body").css("background-color", $("#newBodyColor").val());
});

フォームコード

<form action="#" method="get" name="putcolor">
<strong>Put your color value here</strong> <input id="newBodyColor" type="text" value="" size="15">
<button id="newBodyColorBtn">Change Body Color</button>
</form>

あなたたちが助けてくれることを願っています

キャップ;)

4

2 に答える 2

0

「#」なしで16進数で色付けすると役立つ場合があります

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
function changeBG() {
   document.body.style.background = "#" + $("#newBodyColor").val();
}
</script>
</head>
<body>
<strong>Put your color value here #</strong> <input id="newBodyColor" type="text" value="" size="6">
<button id="newBodyColorBtn" onclick="changeBG()">Change Body Color</button>
</body>
</html>
于 2013-05-22T21:22:37.077 に答える
0
// without jq:
//    document.getElementById("newBodyColorBtn").click(function(){

//with jq
$("#newBodyColorBtn").click(function() {
    document.body.style.backgroundColor = "#" + document.getElementById("newBodyColor").value;
});

http://jsfiddle.net/HnH5W/

動作します ;) (Firefox の場合)、IE を js フィドルでチェックできません... ブロックされます

于 2013-05-22T21:25:22.710 に答える