我遇到的问题是当你离开页面并点击后退或刷新页面时,externalChange没有在IE中触发。
其中一个有问题的网页是http://www.travelwisconsin.com/events。这肯定发生在IE9中,但我也能够使用BrowserStack在IE10中重现它
重现的步骤:
以下是我用来设置此过程的javascript。当你到达上面的第6步时,永远不会调用externalChange方法。您对可能发生的事情有任何建议吗?
var isInit = true;
$.address.strict(false);
$.address.externalChange(function(e)
{
var pageNumber = e.value == ""||e.value=="/"?1:e.value.split('/')[e.value.split('/').length - 1].split('?')[0];
var isArticleTab = !(e.value == ""||e.value=="/"||e.value.indexOf("Directory") >= 0);
if ((!isInit||e.value !="")&&e.value != "directoryAnchor")
{
if (e.value == ""||e.value=="/")
{
wdot.ContentPages.DirectoryListing.LoadEventsPage($(".directoryListContainer"), false, 1, true);
} else {
if (pageNumber != 1) {
wdot.ContentPages.DirectoryListing.LoadEventsPage(!isArticleTab ? $(".directoryListContainer") : $(".articleDirectoryListing"),false, pageNumber,null,$.address.queryString());
} else {
wdot.ContentPages.DirectoryListing.LoadEventsPage($(".directoryListContainer"),false, 1,null,$.address.queryString());
}
}
isInit = false;
} else {
isInit = false;
}
});