平滑滚动生成:目标 div 上的活动属性

Posted

技术标签:

【中文标题】平滑滚动生成:目标 div 上的活动属性【英文标题】:Smooth Scroll generating :active attribute on target div 【发布时间】:2013-12-31 13:50:51 【问题描述】:

我正在使用 jQuery 滚动条滚动到页面上的某个元素。在这种情况下,它是导航栏。但是我遇到了一个奇怪的问题。单击按钮滚动到元素后,生成的元素会生成一个focus 属性。

当我单击和取消单击该元素时,它会消失并重新出现。它仅在我单击按钮滚动到该位置后发生。我尝试使用焦点标签定位 div 并将其声明为 .navbar:focus box-shadow: none; 但它不起作用

我正在使用以下内容来生成滚动效果并通过以下方式定位元素 <a href="#navigationtop" class="anchorLink">

jQuery(function($) 

  var scrollElement = 'html, body';
 $('html, body').each(function () 
  var initScrollTop = $(this).attr('scrollTop');
  $(this).attr('scrollTop', initScrollTop + 1);
   if ($(this).attr('scrollTop') == initScrollTop + 1) 
  scrollElement = this.nodeName.toLowerCase();
  $(this).attr('scrollTop', initScrollTop);
  return false;
        
   );

  // Smooth scrolling for internal links
  $("a[href^='#']").click(function(event) 
  event.preventDefault();

var $this = $(this),
target = this.hash,
$target = $(target);

$(scrollElement).stop().animate(
  'scrollTop': $target.offset().top
, 500, 'swing', function() 
  window.location.hash = target;
);

);

);

【问题讨论】:

“结果元素生成焦点属性”是什么意思? html 元素没有“焦点”属性这样的东西。元素如何为自己生成属性?没有意义。 这是我描述它的最佳方式.....当我点击它时,它会添加我认为的框阴影,但只有在按下滚动按钮之后 您应该首先尝试在 Chrome 开发人员工具 (F12) 之类的工具中检查元素,然后查看单击滚动按钮后应用于元素的样式。您可能有一些内容你的 css 风格.. 像 a:active box-shadow: bla bla).. 需要查看你的一些 html 和 css 才能找到更多关于这里发生的事情的信息。 :) 【参考方案1】:

在您的 master.css 文件中,您有一个样式定义:

.navbar-default background: #F7F7F7!important; 
border: none!important;
box-shadow: 0 0 10px #888
-moz-box-shadow: 0 0 10px #888;
-webkit-box-shadow: 0 0 10px #888;
font-family: 'Oswald', sans-serif!important;

试试这个:

outline: none; 添加到此样式定义中。

【讨论】:

不走运,布莱恩。那是针对我希望保留的影子。灰色#888。我需要在您单击滑块消失后出现的导航上的蓝色 嗯。我不确定你指的是什么……你使用的是什么浏览器? 我编辑了我的答案。我不确定这是否是您所指的,但试一试.. :) 并没有完全按照我想要的方式做到这一点,但它在一定程度上起作用,所以会接受答案。 Kinda最终做了一个hack来修复它。感谢您的帮助! 感谢 AlbaClan,尽我所能提供帮助。真高兴你做到了。继续。祝你好运!! :)

以上是关于平滑滚动生成:目标 div 上的活动属性的主要内容,如果未能解决你的问题,请参考以下文章

单击锚链接时如何实现平滑滚动到不同页面上的部分?

jQuery从按钮onclick跳转或滚动到页面上的某个位置,div或目标[重复]

通过平滑滚动重定向到不同页面上的 div?

html 创建到任何目标的平滑滚动。

返回顶部

使用Scroller实现View的平滑滚动