【发布时间】:2017-07-25 18:19:55
【问题描述】:
我试图操纵 dom 以包含脚本标记,其源指向 Google jQuery CDN。我的原始网页是一个简单的 html,没有包含其他脚本。但是我发现,即使没有将 jquery src 包含到我的页面中,当我键入 $ 时,它也会接受它并将其显示为一个函数。我正在使用 chrome 版本 59.0.3071.115。只需在控制台上输入 $ 即可显示第一个附加的屏幕截图。
我的问题是如何找出与 $ 关联的函数的定义位置以及它是如何被包含在内的。我已经尝试了“$”的搜索框,没有搜索结果。有趣的是,当我输入 jQuery 时,它显示未定义。我的猜测是 $ 正在用于其他一些功能。但是如果我输入类似 $('body') 的东西,它会给我从根元素开始的整个 body 树(第二个屏幕截图)。 我同事的机器上不会出现这个问题。任何帮助或指点将不胜感激!
我在 chrome 开发工具中检查的实际 html。
<html>
<h1 align="center">Beer Selection Page </h1>
<form method="POST" action="SelectBeer.do">
Select beer characteristics<p>
Color:<select name="color" size="1">
<option>light
<option>amber
<option>brown
<option>dark
<br><br>
<input type="SUBMIT">
</form>
</body>
</html>
【问题讨论】:
-
控制台应该告诉你代码失败的行号
-
有时 $ 不起作用,但 jQuery() 会起作用,具体取决于注入方式。
-
[Comman Line API]告诉你$不是 jQuery 而是 chrome 中命令行 API 的一个函数。 -
一段时间以来,它一直是 chrome 开发工具的一部分。它不是 jQuery,只是用于尝试查询选择器的人的类似语法。 (“命令行 api”告诉它这是开发工具的一部分)。本周我学到的有趣提示:单击 Dom 资源管理器中的任何元素,然后在控制台中输入
$0,它会引用该元素。
标签: javascript jquery google-chrome-devtools