用javascript将script元素附加到头部;铬不能工作
appending script element to the head with javascript doesn't work in chrome
在我的主页中,我想检查一下,如果还没有加载,请包含一个edit_profile.js脚本
$(function(){
if (typeof is_editprofilejs_loaded == "undefined") {
alert('undefined');
var e = document.createElement("script");
e.src = base_url+"js/edit_profile.js";
e.type = "text/javascript";
document.getElementsByTagName("head")[0].appendChild(e);
}
else
{
alert('its loaded.');
}
})
在我的script.js
中,我有
$(function(){
var is_editprofilejs_loaded = true ;
alert('now its loaded ! ');
//some code
})
所以当我在firefox中运行代码时,我会收到以下消息
1 - undefined
2 - now its loaded !
但在chrome中,我只得到
1 - undefined
当然,附带页面中的代码不起作用怎么了?
为什么在DOMready函数中有这些函数?
这也是失败的原因:您的变量is_editprofilejs_loaded
是该匿名函数的本地变量,永远不会在主文件的函数中定义。
- 删除不必要的功能和/或
- 通过分配
window.is_editprofilejs_loaded = true
使变量显式全局,并通过if (window.is_editprofilejs_loaded)
进行检查
顺便说一句,你的script.js
最后缺少了一个);
——不确定是否只有一个c&p错误
相关文章:
- 不能从angular2中的子组件指定父组件中的数组
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 转义符不能与innerHTML一起使用
- JSON.parse没有'不能使用Javascript
- JS可以在Chrome中工作,但不能在Firefox中工作
- 砌体不能填补小缺口
- javascript扫雷器floodfill算法不能正常工作
- JavaScript指令不能像我想象的那样工作
- 为什么在这个网站上不能通过JS访问元素
- Facebook登录按钮没有'不能在Firefox上工作
- WebRTC视频聊天可以在FF中使用,但不能在Chrome中使用
- 为什么jQuery 1.8不能在IE8和InternetExplorer9中使用?(截至2012年9月的IE9最新版本)
- AngularJS:$q.dedefe()不能由工厂方法共享
- 不能在同一页上进行多个jquery幻灯片切换
- 不能在图像中的地图标记中使用花式框jquery插件的区域标记
- jQuery Datepicker可以在Safari中工作,但不能在FF或Chrome中工作
- 用javascript将script元素附加到头部;铬不能工作
- 为什么 jQuery 在使用样式标签填充 iframe 时会删除正文和头部标签,但不能没有样式标签
- 使用移动版jquery和cordova时,可折叠列表视图的头部不能刷新