jQuery按钮在整个页面上的任何单击事件上触发

问题描述 投票:0回答:1

这可能是一个非常简单的问题。

这是我的代码。

$( document.body ).click(function () {
  if ( $( ".more" ).first().is( ":hidden" ) ) {
    $( ".compleatelist" ).slideDown( 6000 );
  } else {
    $( ".compleatelist" ).hide();
  }
});
  • 我正在尝试创建一个“阅​​读更多”按钮,该按钮会向下滑动以显示更多信息。
  • 按钮类被称为更多。
  • 隐藏的文本类称为compleatelist。

但是,当我单击整个页面中的任何单击事件而不是我的“ .more”按钮时,按钮触发?

我在这里想念什么?

jquery slidedown
1个回答
0
投票
$( document.body ).click() <-- This means you are firing click on all clicks on the document body

您可能想要

$(".more").click(function(e){
    // $(this)  <-- this is the element you just clicked on
});

仅在单击包含more类的元素时才会触发事件。

© www.soinside.com 2019 - 2024. All rights reserved.