0

我的文档中有 3 个div部分,HTML每当按键时我都试图在彼此之间切换。这个想法是,当一个按键事件发生时,我得到了id当前的div,根据那个id,我在右边淡入div(如果它是 div 1,淡入 div 2,等等)。

我的 HTML 代码如下:

<div id="home" class="current">
        <p align="center">Home</p>
        <p align="center">
           Some content
        </p>
    </div>
    <div id="about">
        <p align="center">About</p>
        <p align="center">
           Some content 
        </p>
    </div>
    <div id="contact">
        <p align="center">Contact Form</p>
        <p align="center">
            Some content
        </p>
    </div>

jQuery代码:

<script>
$("#target").keypress(function(){

        var id = $(this).html().toLowerCase();
          console.log('id is: '+id);    
        $('.current').fadeOut(900, function(){
            $('#'+id).fadeIn(900);
            $('.current').removeClass('current');
            $('#'+id).addClass('current');

        });

    });
</script>
​

上面的代码不起作用,我是新的jQuery事件,请你指导我正确的方式。

4

2 回答 2

1

使用keyupand.val代替。

$("#target").keyup(function(){

    var id = $(this).val().toLowerCase();
    $('.current').removeClass('current').fadeOut(900, function(){
        $('#'+id).fadeIn(900).addClass('current');
    });

});
于 2012-09-18T00:35:53.040 回答
1

你需要一个事件监听器。如果您希望它是任何键(而不是特定键),您可以删除 keyCode 条件语句

$(document).keyup(function(e) {
 if (e.keyCode == 13) {             // enter key
  var id = $('.current').attr('id');
  if (id == "whatever") {
    ............
  } else if (id == "somethingelse") {
    ............
  }
 }
});
于 2012-09-18T03:54:18.560 回答