较新的JavaScript并试图了解其原因,搜索Google导致没有答案(尽管我可能会使用不正确的字词进行搜索)。
我正在<a></a>
内的onclick事件期间调用函数。通过在创建函数之前添加'javascript:',我能够使函数最终起作用(来自同事的建议)。如果没有onclick中的javascript:部分,我的函数就没有被调用。
它现在有效,但我不明白它在做什么,另一个建议把它放入通话中的程序员也不确定它到底是做什么的。
以下是所用代码的简化版本:
#1 .jspf higher up which includes page #2 to display it's contents
function createTagging(1, 2) {
cmCreateElementTag(1 + ", " + 2,"TagName");
}
HTML in .jspf file #2 further down website makes the call to function in file #1
<a id="CatEntry" href="https://aurl"
onclick="javascript: createTagging('parameter1', 'parameter2');"
title="atitle" aria-label="alabel">
<img id="ThumbNailImage_59244" src="https://image.jpg"
alt="" border="0"/>
</a>
-Troy
答案 0 :(得分:4)
为什么在调用我的javascript函数时需要'javascript:'?
你没有。这是一个onclick
处理程序。您使用javascript:
伪协议,其中需要网址(例如,如果您使用href
而不是onclick
)。 onclick
需要JavaScript代码。
事实上,它只能起作用,因为JavaScript标记了语句,javascript:
是有效标签。它完全被忽略了。
如果没有onclick中的javascript:部分,我的函数就没有被调用。
尊重,这一定是观察性的错误。同样,在onclick
处理程序中,无论你是否有javascript:
,它都会没有区别。如果它不起作用,然后它正常工作,则在添加javascript:
的同时更改了 else 。
答案 1 :(得分:2)
onclick
属性始终以HTML格式调用javascript。
onclick="createTagging('parameter1', 'parameter2');"
只有在不使用事件时才需要href
。在那里你需要为Javascript添加protocoll。