Javascript函数不工作后,改变html与innerHTML
Javascript functions not working after changing html with innerHTML
我有一些html,在一个div内使用几个JS函数。如果我在JS和innerHTML的帮助下将该div的内容更改为其他一些html代码,也有一些JS函数,它们停止工作。如果我改回之前的html,它仍然不起作用。
这就像一旦div中的html更新,javascript就会被解除绑定到所有具有该函数的元素。
我知道我可以通过隐藏和显示图层来解决这个问题,但我宁愿不这样做。
目前我已经解决了这个问题,通过注入js文件,每次该div的html使用以下代码更改:
function inject(src, cb, target){
target = target || document.body;
var s = document.createElement('SCRIPT');
s.charset = 'UTF-8';
if(typeof cb === 'function'){
s.onload = function(){
cb(s);
};
s.onreadystatechange = function () {
(/loaded|complete/).test(s.readyState) && cb(s);
};
}
s.src = src;
target.appendChild(s);
return s;
};
每当我更新html时,它总是在html文件中加载新行,这似乎不是一个非常优雅的解决方案。
是否有一种方法,使javascript我有重新加载或保持其连接,当我改变html而不重新加载页面?
要执行js代码,你可以直接使用eval()
,它会立即执行js,不管html或dom结构的变化。
相关文章:
- 正在用jQuery改变HTML结构
- 在javascript中显示表格而不改变html
- 用JavaScript改变HTML中的Tex字符串
- 基于查看区域,使用javascript动态改变html对象中嵌入flash文件的大小
- 改变html标签与相同的尺寸
- 我有反应标签代码工作完美,但我需要改变html结构
- 响应时用jQuery改变html的结构
- Javascript函数不工作后,改变html与innerHTML
- 我想从dropdrown中选择一个值,它应该改变html页面和地图页面中的列表
- Android WebView在点击按钮时改变html的背景和文本颜色
- span>在iframe不会改变html
- 如何根据另一个元素的样式改变HTML元素的样式
- 如何用2个选项改变HTML表单到Javascript
- 在android webView中动态改变HTML元素
- 通过JS改变HTML id
- 当按钮被按下时,如何改变HTML文件上的字段
- 改变HTML图像,函数似乎没有被调用
- 改变html内容和url没有页面重新加载像Facebook导航菜单
- 尝试用Jquery改变HTML
- javascript允许改变HTML单选按钮的值吗?