2011-05-03 175 views
1

是否真的需要javascript:前缀?我知道你应该瞄准不引人注目的JavaScript,但是在什么情况下,如果它不在那里,会有什么破坏?什么时候需要“javascript:...”?

+1

可能的重复http://stackoverflow.com/questions/372159/do-you-ever-need-to-specify-javascript-in-an-onclick – 2011-05-03 22:28:49

+0

@Demian:高度相关,但我不确定他们是“确切”的重复。 – 2011-05-03 22:31:16

+0

@Demian,感谢您的链接,有趣的是,它可能只是onclick/event handler定义中的一个简单标签。 – 2011-05-03 22:34:26

回答

6

javascript:是一个URI方案。

需要在href=""属性或浏览器地址栏中创建运行Javascript的URI。
从未出现过javascript:是可选的情况。

最佳实践表明javascript:在可能的情况下应尽量避免使用URI来处理click处理程序,因此它的使用受到了诟病。

但是,有些情况下没有其他选择。例如,小书签只能使用javascript:创建。

+0

这是否意味着在onclick属性中它们也是必需的? – Flipper 2011-05-03 23:40:11

+0

@Flipper:** No **。它在'onclick'中工作的唯一原因是碰巧它是有效的Javascript语法('goto'标签)。 'onclick'不是一个URI。 http://stackoverflow.com/questions/372159/do-you-ever-need-to-specify-javascript-in-an-onclick – SLaks 2011-05-03 23:53:16

0

如果您将JavaScript代码放入ahref属性或采用URL的其他属性,则浏览器需要检测它是否为JS。如果你在onclick或其他已经期望JS代码的属性中使用它,它是没有必要的(甚至可能不工作)。

0

“prefix”仅用于html锚点()的href属性。它从来没有实际需要,因为你可以定义一个点击事件处理程序。

0

这是需要即使在的onclick的情况下,如果你也有同样的页面上的VBS程序。

相关问题