Javascript window.location在页面加载完成后未导航到正确位置
当我的网站加载下面的javascript时,它会导航到正确的锚定标记,但是当页面的其余部分(通过javascript+ajax加载其他内容)加载时,页面会在一瞬间被向下推到锚定标记之外。在加载所有其他php+javascript之后,是否仍有调用window.location(下面的javascript)的方法Javascript window.location在页面加载完成后未导航到正确位置,javascript,php,Javascript,Php,当我的网站加载下面的javascript时,它会导航到正确的锚定标记,但是当页面的其余部分(通过javascript+ajax加载其他内容)加载时,页面会在一瞬间被向下推到锚定标记之外。在加载所有其他php+javascript之后,是否仍有调用window.location(下面的javascript)的方法 <script> window.location = (""+window.location).replace(/#[A-Za-z0-9_]*$/,'')+"#<?ph
<script>
window.location = (""+window.location).replace(/#[A-Za-z0-9_]*$/,'')+"#<?php echo $windowlocation; ?>"
</script>
window.location=(“”+window.location)。替换(/#[A-Za-z0-9#]*$/,“”)+“#”
这些解决方案应该可以工作:
甚至
window.onload = function ...
这些解决办法应该有效:
甚至
window.onload = function ...
如果您是通过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没有加载。它在后端执行,对前端不做任何操作。(您可能已经知道这一点,只是您的问题的措辞有点混乱)如果您是通过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没有加载。它在后端执行,对前端不做任何操作。(您可能已经知道这一点,只是您的问题的措辞有点混乱)如果将其放入
$(document).ready(函数(){//your code})代码>在DOM准备好后调用它。让我试一试。谢谢我想我试过了,但仍然遇到了同样的问题。$(window).load(function(){//这将在加载整个页面后触发,包括图像});雷德:还是一样的结果。它滚动到适当的锚,加载额外的内容,并将其推到锚标记之外。@user2744722同意。你需要窗口加载函数。如果你把它放在$(document.ready(函数(){//your code})中会怎么样代码>在DOM准备好后调用它。让我试一试。谢谢我想我试过了,但仍然遇到了同样的问题。$(window).load(function(){//这将在加载整个页面后触发,包括图像});雷德:还是一样的结果。它滚动到适当的锚,加载额外的内容,并将其推到锚标记之外。@user2744722同意。你需要窗口加载功能。