试图用javascript和python打开一个锚
首先,对于所有的错误,我感到抱歉,我是一个非常新手的程序员 我试图做的是在页面上打开一个链接(这是python生成的html),并在另一个窗口中打开链接到锚。这个锚是一个反向显示javascript,这意味着我想打开锚所在位置的内容 初始python/html链接如下所示:试图用javascript和python打开一个锚,javascript,python,html,Javascript,Python,Html,首先,对于所有的错误,我感到抱歉,我是一个非常新手的程序员 我试图做的是在页面上打开一个链接(这是python生成的html),并在另一个窗口中打开链接到锚。这个锚是一个反向显示javascript,这意味着我想打开锚所在位置的内容 初始python/html链接如下所示: print "/>TEXT HERE<a value=\"mg-auto\" onClick=\"Open('mg-auto')\" href=\"http://LINKHERE/#mg-auto\" targe
print "/>TEXT HERE<a value=\"mg-auto\" onClick=\"Open('mg-auto')\" href=\"http://LINKHERE/#mg-auto\" target=\"_blank\"><font title=\"mg-auto\" >(<span class=\"tooltip\">?</span>)</font></a>"
我已经在html和python中实现了这个函数
然而,由于某种原因,锚根本不起作用。我四处摆弄,发现一个header+id如下:
<h3 id="IDNAME"></h3>
将创建一个有效的锚点,但是像我这样的div+id将不会。但是,我不能在不破坏html的情况下将头和javascript函数组合在一起
有人知道锚的工作方法吗?我想我最大的问题是,无论我如何尝试实现id,当我尝试链接到锚点时,它将无法识别“#IDNAME”,据我所知,您希望有人单击“(?”,以获得一个新窗口,其中以
display=“none”
开头的div将获得display=“block”
将“#mg auto”放在链接(片段或散列)后,将在页面加载时带您到具有该id属性的元素(如果它在屏幕外,它将跳转到该元素)。但问题是,onClick=“Open('mg-auto')”
将在您跟随链接之前运行,而不是在新窗口中加载新页面之后运行。因此,在新窗口中,div仍然具有display=“none”
要在加载页面时运行某些内容,可以使用窗口.onload
事件,因此您只需要散列。检查下面的代码
window.onload = function() {
// Check if hash exists
if(window.location.hash) {
// Remove the "#" from the hash
hash = window.location.hash.substr(1);
// Display element with id == hash
document.getElementById(hash).style.display = "block";
}
}
当页面上的所有内容都已加载时,该代码将运行
PS:您可以在任何元素(包括div和headers)上放置一个id,并让url的散列将您带到它。这有帮助吗?我以前没有用过JSFIDLE,非常感谢您的回答!我想不到开启不同功能的顺序会成为问题;我一定会记得,下一次使用html和javascript时,在页面加载后会调用order函数:)
<h3 id="IDNAME"></h3>
window.onload = function() {
// Check if hash exists
if(window.location.hash) {
// Remove the "#" from the hash
hash = window.location.hash.substr(1);
// Display element with id == hash
document.getElementById(hash).style.display = "block";
}
}