0

こんにちは、検索入力がフォーカスされているときに背景色を変更できるように、検索入力の親 DIV を選択しようとしています。このコードが機能しない理由がわかりません。助けてくれてありがとう。

http://jsfiddle.net/BZ5uf/1/

HTML

<div class="search">  
   <input class="box" value="Search" onfocus="if(this.value=='Search') this.value='';" onblur="(this.value=='') this.value='Search';">
</div>

CSS

.search {
    position: relative;
    margin: 20px; 
    width: 300px;
    height: 65px;
    border: 1px solid black;

}
input.box { 
    margin: 10px;
}

.fill {
    background: #222;
}

ジャバスクリプト

$(function(){
    $('.box').focus(function(){
        $(this).parent().addClass('fill');
 )};
4

6 に答える 6

2

構文エラーが多発。

)}; //mismatched order

する必要があります

    });
}); //you also forgot to close DOM ready handler

また、フィドルの上部にある「JSHint」ボタンを使用して実験してください。

優れた IDE では、これらのエラーも強調表示されます。また、適切なインデントを使用すると、閉じられていないハンドラーを見つけるのに役立ちます。

$(function () {
    $('.box').focus(function () {
        $(this).parent().addClass('fill');
    });
});

上記の形式は、jsfiddle の「TidyUp」ボタンを使用して取得されます。これが更新された fiddleです。

于 2013-02-08T23:13:31.633 に答える
2

jsFiddle での作業例

$('.box').on('blur', function () {
    $(this).parent()
           .addClass('fill');
});
于 2013-02-08T23:17:20.470 に答える
1

JavaScript にエラーがあります:

これを変える :

$('.box').focus(function(){
    $(this).parent().addClass('fill');
)};

に :

$('.box').focus(function(){
    $(this).parent().addClass('fill');
});

(ブレースの順序が反転していることに注意してください)

于 2013-02-08T23:17:07.353 に答える
0

JS にタイプミスがあります。次のようになります。

$(function(){
    $('.box').focus(function(){
         $(this).parent().addClass('fill');
    });
});
于 2013-02-08T23:13:41.650 に答える
0

構文エラーがあったようです。正しいコードは次のとおりです。

$(function(){
    $('.box').focus(function(){
        $(this).parent().addClass('fill');
    });
});
于 2013-02-08T23:13:42.587 に答える
0

これを試して。

   $(function(){
    $('.box').focus(function(){
        $(this).parent().addClass('fill');
    });
});
于 2013-02-08T23:15:29.133 に答える