【发布时间】:2015-06-10 19:34:38
【问题描述】:
根据窗口的大小,我正在尝试更改标签的类:
<ul id="navul" class="nav navbar-nav">
并改为:
<ul id="navul" class="nav nav-pills">
这是我正在尝试的,但不起作用:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function () {
$(window).resize(function () {
$("count").text(x += 1);
if ($window.width() < 768) {
$('#navul')
.removeClass('navbar-nav')
.addClass('nav-pills');
};
if ($window.width() > 769) {
$('#navul')
.removeClass('navbar-pills')
.addClass('nav-bar');
};
});
});
</script>
我也试过把它包起来
$(document).ready(function () {
....
});
通过在开发工具中观察 DOM,脚本似乎根本没有触发。我可能遗漏了一些简单的东西。
编辑:
我用这个作为我的起始模板:
http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_event_resize
这个脚本可以完美运行 $(window) 被声明。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
x = 0;
$(document).ready(function(){
$(window).resize(function(){
$("span").text(x += 1);
});
});
</script>
<p>Window resized <span>0</span> times.</p>
【问题讨论】:
-
你有没有在任何地方声明过$window?
-
查看我原来的问题的编辑。如果您点击链接,示例脚本将起作用。我可以在我的页面上复制它。问题似乎出在更换班级。
-
您的编辑没有解决 $window 是 undefined 变量这一事实。
-
@CaseyCrookston no its $(window) not $window... 具体来说,您需要在窗口周围加上括号
-
正是@Nakib 所说的(只是括号,而不是括号)。您提供的链接完全不相关,因为您的代码中有错误。 $window 不是您在任何地方声明的变量。将
$window的所有实例更改为$(window)。
标签: javascript asp.net-mvc twitter-bootstrap navigation