【问题标题】:jQuery - Is javascript excuted when wrapping HTML with $?jQuery - 用 $ 包装 HTML 时是否执行 javascript?
【发布时间】:2013-01-09 07:49:14
【问题描述】:

我认为绑定到 orerroronclick、... 的内联 JavaScript 运行。

但是 <script type="text/javascript">...</script> 元素在使用 $(...) 包装时也会运行 javascript 吗?


如果它确实运行,它是沙盒的吗?


很抱歉造成误解:

想要确保在 $ 方法中加载的 JavaScript 不会运行。我知道关于如何在页面中加载 JavaScript 脚本的其他方法,我通常使用 require。

只是想弄清楚在 $ 中包装 HTML(包含脚本标签)的安全风险有多大。

如果有人能给我一些关于如何在 jQuery 方法中解释 JavaScript 的见解/指导,那将给我答案,谢谢。


谢谢:)

【问题讨论】:

  • 这里问什么很难说,你说的“<script type="text/javascript">...</script> element run JS”是什么意思?
  • 我想避免 JavaScript 脚本在 $ 中被执行。

标签: javascript jquery html dom


【解决方案1】:

你总是需要写

<script type="text/javascript"></script> 
or 
if you use the html5 Doctype
<script></script> 

当你想执行 Javascript。在您的 html 文件中。

如果您想在不编写这些标签的情况下执行 javascript,那么您需要添加一个 extern .js 文件并链接到该文件,如下所示:

<script src="pathtofile/javascript.js"></script>

【讨论】:

  • 我想避免在 jQuery 中运行 JavaScript
【解决方案2】:

如果我对问题的理解有误,请朋友原谅。

如果您将一些代码包装在$() 中,它会将其视为 javascript 或 jquery 代码。但是我们知道 script 是一个标签而不是 javascript 代码,所以最终它会抛出一个错误。

为了执行脚本标签中的任何代码,请将代码放在一个文件中,并使用jquery的getScript()函数将$()括起来。最后可能会满足您的要求:)。

$(function() {
    $.getScript(pathoffile);
}); 

【讨论】:

  • 对,我的意思是说 $() 会抛出错误:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-05
  • 2019-07-18
相关资源
最近更新 更多