Javascript 如何检测是否存在';是水平滚动条吗?
所以我制作了这个WordPress主题,它是有响应的,除了这个:当我把窗口缩小(但比600px大,因为这样菜单就会变成移动版本)并将鼠标悬停在菜单项的菜单项上。它有时会偏远,因此会出现一个滚动条。我处理这个问题的想法是检测(水平)滚动条何时出现,然后重新排列菜单。问题是我不知道如何检测滚动条是否出现 我已经尝试了一些方法,但是它还不能正常工作,所以没有必要把代码放在这里。 我用jquery、javascript和css做了一些尝试,但似乎没有任何效果。这也是我的第一个主题,所以我是这些东西的新手 这里的请求后编辑是html、css和jquery(我在这里回答后使用) html: JQuery:Javascript 如何检测是否存在';是水平滚动条吗?,javascript,jquery,html,css,wordpress,Javascript,Jquery,Html,Css,Wordpress,所以我制作了这个WordPress主题,它是有响应的,除了这个:当我把窗口缩小(但比600px大,因为这样菜单就会变成移动版本)并将鼠标悬停在菜单项的菜单项上。它有时会偏远,因此会出现一个滚动条。我处理这个问题的想法是检测(水平)滚动条何时出现,然后重新排列菜单。问题是我不知道如何检测滚动条是否出现 我已经尝试了一些方法,但是它还不能正常工作,所以没有必要把代码放在这里。 我用jquery、javascript和css做了一些尝试,但似乎没有任何效果。这也是我的第一个主题,所以我是这些东西的新手
jQuery(document).ready(function($){
$('a').each(function(){
if ($(this).width > $(this).parent().width()) {
$('.main-navigation').css('background-color', 'red');
}
});
});
使用jquery检查内部元素的宽度是否大于父元素的宽度 如果您有此结构:
<div class="nav">
<ul>
<li><a href="#">Test</li>
</ul>
</div>
使用jquery检查内部元素的宽度是否大于父元素的宽度 如果您有此结构:
<div class="nav">
<ul>
<li><a href="#">Test</li>
</ul>
</div>
谢谢你的回复。我已经尝试了你的解决方案。首先,当我把确切的代码放入其中时,出现了一个错误,所以我把它改为:jQuery(document).ready(函数($){$('a')。each(函数(){if($(this).width>$(this.parent().width()){$('main navigation')。css('background color','red');});});(我尝试更改菜单的颜色,以便知道它是否有效)但当我使滚动条显示时,它不会更改颜色。您可以指出我正在犯的错误吗?谢谢:)您的文档中是否包含了jquery库?是的,它已经包含了,因为我以前将它与其他内容一起使用:)Html,CSS和jQuery。感谢您的回复。我试过你的解决办法。首先,当我将确切的代码放入其中时,它给出了一个错误,所以我将其更改为:jQuery(document).ready(函数($){$('a').each(函数(){if($(this).width>$(this.parent().width()){$('.main navigation').css('background-color','red');}});});(我尝试更改菜单的颜色,以便知道它是否有效)但当我显示滚动条时,它不会更改颜色。你能指出我犯的错误吗?谢谢:)您的文档中包含jquery库了吗?是的,因为我以前在其他东西中使用过它,所以它已经包含了:)Html、CSS和jquery。
<div class="nav">
<ul>
<li><a href="#">Test</li>
</ul>
</div>
$(document).ready(function(){
$('a').each(function(){
if ($(this).width > $(this).parent().width()) {
//do something when it has scrollbar
}
});
});