javascript - on ('click' ) 函数在第二次点击时触发

标签 javascript jquery html css click

我有一个问题,我有一个 li 每当单击一个元素时它就会切换,但问题是我正在尝试将窗口导航到 li 当“点击”元素被点击时。它工作正常,但我的问题是,该脚本仅在第二次点击时有效?

我的理论是,由于 lidisplay:none 中,它不是在第一次点击时读取它,而是在第二次点击时读取它。有没有办法同时触发切换和窗口导航来解决这个问题?

还有没有办法以平滑的方式动态(动画)移动它?

谢谢大家!

SAMPLE JSFIDDLE

 $(document).on('click', "#click", function(){

  var viewportHeight = $(window).height(),
      foo = $('ul li:nth-child(2)'),
      elHeight = foo.height(),
      elOffset = foo.offset();
  $(window).scrollTop(elOffset.top + (elHeight/2) - (viewportHeight/2));
  $(foo).slideToggle();
  });

最佳答案

大副尝试设置可见性:隐藏;不显示无

如果还是不行,尝试直接点击设置定时器工作,这次会再次调用一个计算函数......它会工作..可以更容易地测试它..将这个添加到你的下面功能..

        $(document).on("mousemove", "#click", function(){

  var viewportHeight = $(window).height(),
      foo = $("ul li:nth-child(2)"),
      elHeight = foo.height(),
      elOffset = foo.offset();
  $(window).scrollTop(elOffset.top + (elHeight/2) - (viewportHeight/2));
  $(foo).slideToggle();
  });

关于javascript - on ('click' ) 函数在第二次点击时触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24117511/

相关文章:

php - 跨页面记住选中的复选框 - 最好的方法是什么?

javascript - jQuery 在搜索中切换父级

javascript - 如何在两个或多个点之间画线? (积分可以动态改变)

javascript - 在不使用 javascript 的情况下,div 是否使图像高度与溢出匹配?

javascript - 将 Jquery 无冲突代码添加到我当前的代码中

javascript - 在另一个类中添加一个或多个类的实例

html - 需要帮助将 div 与 CSS 对齐

Java如何将单引号和双引号编码成HTML实体?

javascript - DIV 上的 jQuery 验证插件

Jquery scrollTo 滚动有点太远了