Javascript 从URL重定向锚点以指定Onload
在我们的网站上,我们有一个页面,我们有5个按钮的图像。单击每个按钮时,将使用onclick函数显示更详细的信息 我们要做的是从URLJavascript 从URL重定向锚点以指定Onload,javascript,jquery,html,Javascript,Jquery,Html,在我们的网站上,我们有一个页面,我们有5个按钮的图像。单击每个按钮时,将使用onclick函数显示更详细的信息 我们要做的是从URLwww.example.com#program中提取锚定信息,然后使用该锚定指定要加载的onload 因此,理论上,www.example.com#program将执行以下操作: <img src="program.png" width="159" height="115" onload= "ShowHide('ACE', 'hidden');
www.example.com#program
中提取锚定信息,然后使用该锚定指定要加载的onload
因此,理论上,www.example.com#program
将执行以下操作:
<img src="program.png" width="159" height="115"
onload=
"ShowHide('ACE', 'hidden');
ShowHide('program', 'visible');
ShowHide('ACE2', 'hidden');
ShowHide('ACE3', 'hidden');
ShowHide('ACE4', 'hidden'); "/>
任何帮助都将不胜感激 如果您关注哈希的更改,则可以更动态地执行此操作:
var sections = ['ACE', 'program', 'ACE2', 'ACE3', 'ACE4'];
window.onhashchange = function(evt) {
var hash = location.hash.substr(1);
// iterate sections and make section at location.hash visible
sections.forEach(function(section) {
var visibility = 'hidden';
if(section === hash) {
visibility = 'visible';
}
ShowHide(section, visibility);
});
};
您可以在此处查看演示:,打开控制台查看哪些项目可见,哪些项目隐藏
因为您已经为每个图像按钮设置了onclick,所以当用户单击按钮时,您需要更新散列。您没有发布处理图像按钮单击的代码,但它类似于:
imageButton.onclick = function() {
// whatever you are currently doing when the user clicks the image button
location.hash = 'ACE'; // or whichever button they clicked
}
谢谢你的工作完美!我要做的是添加scrolltop函数,因为它会在页面上跳转。它可以正常工作。当我在页面上手动输入哈希“www.example.com#ACE”时,它会加载完美。当我使用相同的URL从社交媒体帖子进入页面时,它不会加载。你需要调用
location.hash='ACE'
,等等。在你的按钮onclick中,更新onclick中的hashDoes,如下所示:
我已经更新了我的答案,你说你已经为你的图像按钮设置了onclick处理程序,您需要更新每个单击处理程序中的位置哈希,我发布的其他代码应该放在任何onclick处理程序之外。
imageButton.onclick = function() {
// whatever you are currently doing when the user clicks the image button
location.hash = 'ACE'; // or whichever button they clicked
}