window.location在页面加载完成后未导航到正确的位置

时间:2016-05-19 22:33:54

标签: javascript php

当我的网站加载下面的javascript时,它导航到正确的锚标签,但是当页面的其余部分被加载(其他内容通过javascript + ajax)时,一瞬间页面被推下超出锚标记。无论如何在所有其他php + javascript加载后调用window.location(下面的javascript)?

<script>
window.location = (""+window.location).replace(/#[A-Za-z0-9_]*$/,'')+"#<?php echo $windowlocation; ?>"
</script>

2 个答案:

答案 0 :(得分:2)

如果您通过ajax加载,那么您可以使用回调方法和某种方法来检查它们何时完成。

var sectionsLoaded = 0;
var numSections = 1; // number of sections you are loading

$.ajax({ 
    ...
    complete: function(){
        doneLoading();     
    }
});

function doneLoading(){
     sectionsLoaded++;
     if(sectionsLoaded == numSections) {
        //Do something
     }
}

希望这可以回答你的问题,或者至少在某种程度上是有用的。另外要明确PHP不能加载。它正在后端执行,对前端没有任何作用。 (你可能已经知道这个问题的措辞有点令人困惑)

答案 1 :(得分:0)

这些解决方案应该工作:

<body onload="script();">

document.onload = function ...

甚至

window.onload = function ...