2

jquery を使用して、以下の HTML ドキュメントのすべての入力を選択し、「keydown」イベントで「this」を選択して、次の要素を表示しようとしています。

私のjQuery

$(document).ready(function(){
    $('.hint').hide();
});
    $('input').keydown(function(){
        $(this).show();
});

私のHTML

<!DOCTYPE html>
<html>
<head>
<title>Title of my Page</title>
</head>
<body>

<p>
    <input type="text"><span class="hint">Something cool</span>
</p>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="app.js"></script>
</body>
</html>
4

4 に答える 4

4

何を求めているのかは明確ではありませんが、ページの準備ができた後に2番目の関数が実行されていないため、スクリプトの前にDOMをロードすることに注意してください.

$(document).ready(function(){

    $('.hint').hide();

    $('input').keydown(function(){
        $(this).show();
    });

});

次の要素を表示するには、行を次のように変更します。

 $(this).next().show();
于 2012-12-27T22:54:10.223 に答える
0

jQuery で .next( [selector] ) 関数を使用してみてください。( .hint スパンを表示したいと思いました)

$(document).ready(function() {
    $('.hint').hide();
});
$('input').keydown(function() {
    $(this).next('.hint').show();
});​

ここにサンプルがあります: http://jsfiddle.net/RQ3zw/

于 2012-12-27T22:56:30.070 に答える
0

ああ!それを見つけた!

追加するだけでした

 $(this).next().show();

代わりに

$(this).show();

完成したので、これは次のようになります。

$(document).ready(function(){
    $('.hint').hide();
});
    $('input').keydown(function(){
        $(this).next().show();
});
于 2012-12-27T22:56:54.580 に答える
0

.next()セレクターを使用します。

$(this).next('.hint').show();

ここでフィドル。

于 2012-12-27T22:58:33.287 に答える