链接上的Javascript触发事件
所以我只是需要一些帮助。我在一个单独的HTML页面上有一个锚,所有这些页面都与一个外部JS文件链接 所以我有链接上的Javascript触发事件,javascript,html,xss,Javascript,Html,Xss,所以我只是需要一些帮助。我在一个单独的HTML页面上有一个锚,所有这些页面都与一个外部JS文件链接 所以我有 <!-- language: none --> page1.html page2.html js.js 页面1.html 页面2.html js.js 在第1页中,我有一个链接链接到第2页上的特定锚,我希望在用户打开该链接时在第2页上启动javascript函数。我无法使用page1链接中的onclick按ID获取第2页上的元素并调用js中的函数,因为xss停止了它
<!-- language: none -->
page1.html
page2.html
js.js
页面1.html
页面2.html
js.js
在第1页中,我有一个链接链接到第2页上的特定锚,我希望在用户打开该链接时在第2页上启动javascript函数。我无法使用page1链接中的onclick按ID获取第2页上的元素并调用js中的函数,因为xss停止了它
So tl;博士
page1.html->链接在这里page2.html->destination在这里,当用户到达目的地时,我想在js文件中启动一个函数。但只有当他通过链接到达第2页的特定锚时。(例如:p1上的链接转到
page2.html#destination
)
这可能吗?我已经尝试将
onfocus
、onevent
和onchange
处理程序附加到第二页的锚上,但它不起作用;使用属性window.location.hash
。与此类似(第2.html页):
如果您希望page2中的某些JS仅在page2以特定方式到达时运行,那么通常的方法是让page1在转到page2时添加一个查询参数,并让page2查找该查询参数。当page2启动时,它会查找查询参数并运行一些额外的JS(如果存在) 因此,如果page1是
page1.html
,而page2是page2.html
,那么page1中的特殊链接将链接到page2.html?action=1
page2.html中的javascript将在URl中查找action=1
,只有在page2.html上找到action=1
时才运行它的特殊JS
所有查询参数都可以通过窗口.位置.搜索获得。如果不需要任何其他查询参数,则可以使用:
if (window.location.search == "?action=1") {
// execute your code here
}
如果可能存在其他查询参数,则可以使用:
if (window.location.search.match(/(\?|&)action=1($|&)/)) {
// execute your code here
}
告诉他如何“获得”动作=1,因为他可能不知道
if (window.location.search.match(/(\?|&)action=1($|&)/)) {
// execute your code here
}