对于FireFox el.dom.innerHTML
<title>Test</title>
<link rel="stylesheet" type="text/css" href="common.css">测试
对于IE el.dom.innerHTML
测试
在FF中,返回的el.dom.innerhtml包含和标记,但在IE中不包含。这些被Ext过滤掉了吗?如果是,为什么?
在此论坛链接下面,给出了覆盖Ext.element.Update方法的解决方案。
Ext.override(Ext.Element, {
update : function(html, loadScripts, callback){
}http://www.sencha.com/forum/showthread.php?30110-internet-explorer-autoLoad-css-not-applied
但我有一个问题,我把这个函数添加到哪个ExtJs文件中。因为ext-all-2.2.js和ext-base-2.2是ExtJs库的核心文件。我把这段代码放在ExtExtension-2.2.js文件中,但是当赋值this.el.dom.innerHtml=Markup (标记是包含html字符串的字符串)时,覆盖更新方法不会触发。
请告诉我我把哪个ExtJs文件放入函数。Ext.Override(Ext.Element)更新方法?
发布于 2011-03-13 06:13:52
该覆盖只需要在加载Ext脚本之后的某个时间运行。因此,在包含Ext文件之后再包含一个javascript文件,该方法将被覆盖。
<script type="text/javascript" src="/path/to/ext-all-2.2.js"></script>
<script type="text/javascript" src="/path/to/myscript.js"></script>in myscript.js:
Ext.override(Ext.Element, {
update : function(html, loadScripts, callback){
...
}
}但是请记住,Ext不是魔术。当简单地分配innerHTML时,它不能自动触发update函数,因为这完全是由浏览器处理的。相反,直接使用update函数,这将更新innerHTML:
而不是:
this.el.dom.innerHtml=Markup;使用:
this.el.update(Markup);https://stackoverflow.com/questions/5281133
复制相似问题