Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
链接上的Javascript触发事件_Javascript_Html_Xss - Fatal编程技术网

链接上的Javascript触发事件

链接上的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停止了它

所以我只是需要一些帮助。我在一个单独的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停止了它

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
}