Jquery 在浏览器调整大小时重新加载脚本
我正在为一个响应迅速的网站设计一个水平导航栏。 我创建了一个jQuery脚本来计算在包装列表元素之前可以显示多少列表元素 到目前为止还不错 现在我的问题是: 如何使用Jquery 在浏览器调整大小时重新加载脚本,jquery,responsive-design,navigation,Jquery,Responsive Design,Navigation,我正在为一个响应迅速的网站设计一个水平导航栏。 我创建了一个jQuery脚本来计算在包装列表元素之前可以显示多少列表元素 到目前为止还不错 现在我的问题是: 如何使用$(window).resize在包装编号列表元素之前重新计算它们 JS: $(函数(){ var totalWidth=0; 变量菜单=$('nav ul'); var menuWidth=menu.innerWidth(); menu.find('li')。每个(函数(){ totalWidth+=$(this).outerWi
$(window).resize
在包装编号列表元素之前重新计算它们
JS:
$(函数(){
var totalWidth=0;
变量菜单=$('nav ul');
var menuWidth=menu.innerWidth();
menu.find('li')。每个(函数(){
totalWidth+=$(this).outerWidth();
如果(总宽度>菜单宽度){
console.log(总宽度);
$(此).before(“
感谢Davelee创建初始化函数,将IDONY调用过的代码放入其中
var menu = $('nav ul');
而不是onUpdate函数重新计算新值
var totalWidth = 0;
var menuWidth = menu.innerWidth();
menu.find('li').each(function () {
totalWidth += $(this).outerWidth();
if (totalWidth > menuWidth) {
console.log(totalWidth);
$(this).before('<li class="more-content"><a>More</a><ul>');
$('.nav .menu li:last').after('</li>');
$(".more-content").nextAll().appendTo(".more-content ul");
return false; // Abort loop
}
});
var totalWidth=0;
var menuWidth=menu.innerWidth();
menu.find('li')。每个(函数(){
totalWidth+=$(this).outerWidth();
如果(总宽度>菜单宽度){
console.log(总宽度);
$(此).before('li class=“more content”>more);
$('.nav.menu li:last')。在('
')之后;
$(“.more content”).nextAll().appendTo(“.more content”);
返回false;//中止循环
}
});
调用
initialization
甚至可以在那里调用onUpdate
一次。而不仅仅是调用onupatte
甚至可以调整窗口的大小。欢迎这样做!并始终将您的代码放在问题中。感谢您的回复!onUpdate函数是什么意思?现在我修改了我的代码如下:
var totalWidth = 0;
var menuWidth = menu.innerWidth();
menu.find('li').each(function () {
totalWidth += $(this).outerWidth();
if (totalWidth > menuWidth) {
console.log(totalWidth);
$(this).before('<li class="more-content"><a>More</a><ul>');
$('.nav .menu li:last').after('</li>');
$(".more-content").nextAll().appendTo(".more-content ul");
return false; // Abort loop
}
});