Javascript $是未定义的jQuery和Bing映射API
所以我对Bing Maps API中信息框的高度有一个问题。我正在加载的内容正在跳出盒子。所以我想我应该尝试使用jQuery获取outerHeight并相应地更改div的高度 我似乎遇到了一个错误,错误是“$未定义”。我非常确定我正在以正确的顺序正确加载库。你知道为什么我仍然会犯这个错误吗Javascript $是未定义的jQuery和Bing映射API,javascript,jquery,undefined,bing-maps,Javascript,Jquery,Undefined,Bing Maps,所以我对Bing Maps API中信息框的高度有一个问题。我正在加载的内容正在跳出盒子。所以我想我应该尝试使用jQuery获取outerHeight并相应地更改div的高度 我似乎遇到了一个错误,错误是“$未定义”。我非常确定我正在以正确的顺序正确加载库。你知道为什么我仍然会犯这个错误吗 <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" con
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script charset="UTF-8" type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0"></script>
<script type="text/javascript">
var infoBoxHeight = $('#infobox-info').outerHeight();
无标题文件
var infoBoxHeight=$('#infoboxinfo').outerHeight();
后来我试图提醒infoBoxHeight,但我一直得到“$未定义”。提前感谢您的帮助。尝试使用http://而不是//。我总是这样做,但只是因为它有时在我的开发计算机上不工作,这取决于浏览器。查看此网站,我发现了一个解释: 引自《邮报》: 更一般的解释是,匿名协议URL不能 隔离工作;必须有相关的背景。在典型的web中 因此,以这种方式引入脚本库是很好的,但任何 外部链接应始终指定协议。我试过一个简单的方法 test://stackoverflow.com映射到file:///stackoverflow.com 总共 我在浏览器中试用过,所以它们本身无法工作 我希望它能帮助你。如果你发现我对这个答案没有贡献,请告诉我 还有别的。我在本地尝试过,并在Chrome中检查了javascript控制台,它不起作用,错误很明显: 加载资源失败file://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js 未捕获引用错误:$未定义索引。html:8
它正在本地寻找图书馆。我建议把它扔掉
script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"
在你的“text/javascript”里放上这个
1.)JS控制台中是否存在任何错误?2.)是否从硬盘打开HTML文件(通过
文件://
协议?)是的,我正在本地运行它。我尝试在地址中添加http:,得到了相同的结果。至于检查脚本是否正确加载,我不确定您的确切意思。在我的开发者工具错误控制台中,我得到的唯一错误是$is undefined。您使用的是哪种浏览器?您是否尝试过此URI:http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js
在本地,我总是使用http://而不是//。在src参数中尝试在另一种情况下,如果我不使用http://Especially 在链接的问题中包含了文件协议。确切地说,我复制了答案中适合我的部分。我从来没有深入探究过为什么我必须这么做,这已经成为一种习惯。但事实上,我现在在工作中再次检查,是的,如果我在本地文件中不使用http://它不起作用,我会得到相同的错误资源无法加载(jquery)请在下次包含作者和链接:)/
将被包含页面的方案替换。如果在本地运行文件,/
将变为file:///ajax.googleapis.com
。在我的电脑上,Chrome尝试加载脚本几秒钟(~10秒)后失败。我是通过链接完成的,很抱歉我没有提及所有内容。我首先想到了这个主意,然后查看了网站。
var jq = document.createElement('script');
jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js";
document.getElementsByTagName('meta')[0].appendChild(jq);
jq.onload = procede;//make sure you don't type parenthesis
//i.e. 'procede()' runs function instantly
// 'procede' gives it a function to run when it's ready
...
function procede()
{
//jQuery commands are loaded (do your magic)
}