我想使用javascript刷新页面并转到div id。
示例我所做的是
echo "<script type='text/javascript'>top.location.href = '" . $url . "/page.php#contact';</script>";
示例#contact
div位于页面的一半并且它不起作用,除非我按下回车按钮并且它转到#contact
。
<div id="contact">Contact</div>
如果用php可以完成
header('Location:/page.php#contact');
让我知道正确的方法
答案 0 :(得分:2)
从技术上讲,你的脚本应该可行。至少当我尝试它时,似乎没有太多问题。但是,请记住,如果您只是将javascript放在页面上,那么浏览器可以立即运行它而无需等待整个页面加载。我的观点是,如果你在之前输出javascript ,你实际上在页面上放置了DIV标签,浏览器可能还没有看到div标签,也无法在那里滚动浏览器。
您要确保在HTML源中的DIV之后输出脚本,或者在页面加载后运行javascript,例如:
echo "<script type='text/javascript'>
window.onload = function () { top.location.href = '" . $url . "/page.php#contact'; };
</script>";
此外,如果您要刷新页面,那么这将无效,因为如果网址与当前网址相同,浏览器会假设您只想转到#contact
的位置。
答案 1 :(得分:0)
简单:
location.href = '#contact';
答案 2 :(得分:0)
确保您的页面在联系人div
附近定义了书签或锚点要继续使用#contact div,您必须在那里定义锚[联系人]或书签。
接触
然后它应该重定向到相应的位置
答案 3 :(得分:0)
echo $url; //for debugging purpose only, to see if you are writing this right!
echo "<script type='text/javascript'>
location.href = '" . $url . "/page.php#contact';
</script>";
top
之前不需要location.href
。