我遇到了一些无法在网上找到有关文档的问题。
问题在于,导航菜单有时会在页面上导航后自动挂起。它经常发生,因此您应该可以通过访问我建立的临时站点来复制它:https : //infinite-temple-73811.herokuapp.com
尝试从页面浏览到另一个页面并重复,这应该在单击几次后发生。
我不确定为什么会这样,但是我怀疑这与菜单项“ Snabbafrågor”和“ Topplistan”启动AJAX调用有关。
另外值得注意的是,这是一个HTML文件。
我做如下的AJAX呼叫
$(document).delegate('#startQuiz', 'click', function () {
$.ajax({
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
type: 'GET',
url: '/quickQuiz',
async: false,
success: quizStarted,
fail: onFail,
statusCode: {
401: function () {
$.growl.error({message: "Error vid validate..."});
}
}
}).done(function () {
console.log('Login Ajax done!');
});
});
并且,quizStarted方法如下所示:
var quizStarted = function (data, textStatus, xhr) {
console.log("Validate done.");
var result = jQuery.parseJSON(data);
$('#imagePath').attr("src", result.image);
$('#quickQuestion').text(result.question);
$('#quickOne').text(result.quickOne);
$('#quickTwo').text(result.quickTwo);
$('#quickThree').text(result.quickThree);
$('#quickFour').text(result.quickFour);
$('#currentPoints').text(result.points);
location.href = "#quickQuiz";
}
在后端,一切似乎都很好,只是挂了导航面板。发生时,其他所有内容都保持响应。
EDIT1:面板代码:
<div data-role="panel" id="panel" data-position="right" data-display="reveal" class="ui-btn-right">
<h2>Meny</h2>
<ul data-role="listview">
<li data-icon="home"><a href="#home">Home</a></li>
<li><a id="startQuiz">Snabb frågor</a></li>
<li><a id="displayHighscore">Topplistan</a></li>
<li class="adminPage"><a href="#admin">Admin</a></li>
<li class="login"><a href="#dologin">Login</a></li>
<li class="logout" data-icon="delete"><a id="logoutBut">Logout</a></li>
</ul>
</div>
编辑2:
经过更多调查后,我实际上认为它不再与AJAX调用有关。因为如果仅在“主页”和“登录”之间导航,则仍然会发生,因此它们不会初始化任何AJAX调用。
奥马尔的评论为我解决了这个问题。
我没有在每个页面中使用许多具有相同ID的面板,而是改为使用外部面板。现在效果更好。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句