我正在使用jquery.click在我的aspx页面中使用菜单。在我的asp.net页面中。
如果页面不包含参数(例如“mypage.aspx”)单击功能工作正常并且我的菜单打开,但是当我打开带有参数的页面(例如“mypage.aspx?id = 3”)时,在页面中,我的点击功能不起作用,菜单无法打开。
这是我的jquery.click函数:
// Show menu
$("a.showMenu").click(function () {
if (menuStatus != true) {
$(".ui-page-active").animate({
marginLeft: "165px",
}, 300, function () {
menuStatus = true
});
return false;
} else {
$(".ui-page-active").animate({
marginLeft: "0px",
}, 300, function () {
menuStatus = false
});
return false;
}
});
这是mypage.aspx
中的html代码(打开菜单)<a href="#" class="showMenu"><img src="images/icon-menu.png" alt="Menu" border="0" /></a>
我该怎么办?
答案 0 :(得分:0)
这是一个很好的测试,只是为了看看jQuery是否正常工作:
// Show menu
$("a.showMenu").click(function () {
alert('I am here'); // <---
if (menuStatus != true) {
$(".ui-page-active").animate({
marginLeft: "165px",
}, 300, function () {
menuStatus = true
});
return false;
} else {
$(".ui-page-active").animate({
marginLeft: "0px",
}, 300, function () {
menuStatus = false
});
return false;
}
});
如果没有,那么你引用了jQuery.js文件吗?类似的东西:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
答案 1 :(得分:0)
正如提到的评论; menuStatus
是关键。最初设定在哪里?
我为你创建了一个jsFiddle。我只是使用文字而不是你的图像,但它应该有所帮助。请注意,我正在将menuStatus
初始化为false。
答案 2 :(得分:0)
我测试了你的代码并且它有效。我不确定你的问题在哪里。
In this fiddler, I tested your code and it worked
And in this fiddler, I removed the menuStatus
flag
为了删除menuStatus
标记,我更改了click
的{{1}}函数
如果您可以更具体地了解您的错误,那么检测问题会更容易
快乐的编码!
答案 3 :(得分:0)
谢谢大家,但我自己找到了解决方案。
问题在于,我创建了发送链接。
我的旧代码是:
<a href="mypage.aspx?id=3" >Go to My Page</a> »
我添加了rel =“external”,我的菜单每次都有效!
<a href="mypage.aspx?id=3" rel="external">Go to My Page</a> »
非常感谢!