我是Extjs的新手。我在我的项目中使用Extjs 4。加载ext-all.js后,它会自动将类添加到<body>
标记中。我的所有其他CSS样式都使用extjs样式进行了更改。我在文档中发现将Ext.scopeResetCSS属性设置为true,所以我添加如下。
Ext.onReady(function(){
new Ext.Component({
scopeResetCSS: true
});
});
但它不会改变任何事情。我仍然有同样的问题。
有没有办法阻止extjs自动为标签添加css类?请帮忙..
这是我生成多行消息框的代码。
<link rel="stylesheet" type="text/css" href="components/com_jobs/js/extjs/resources/css/ext-all.css"/>
<script type="text/javascript" src="components/com_jobs/js/extjs/ext-all.js"></script>
<!-- extjs message box code -->
<script type="text/javascript">
Ext.require([
'Ext.window.MessageBox'
]);
function removeBid(bidid){
Ext.MessageBox.show({
title: 'Address',
msg: 'Please enter your address:',
width:300,
buttons: Ext.MessageBox.OKCANCEL,
multiline: true,
//fn: showResultText
});
}
</script>
我做错了什么???我希望extjs只设计自己的组件。但现在extjs风格对我的整个页面都有影响..请帮助。
感谢。
答案 0 :(得分:0)
scopeResetCSS属性是Ext.buildSettings的一部分,它在Ext JS初始化序列的开头使用。如果你想改变它,你必须编辑ext-all.js或更改Sencha JS Builder中的设置(我假设你没有使用它)。
在您喜欢的文本编辑器中打开ext-all.js(最好能够处理更大的文件)并在文件开头附近搜索“scopeResetCSS”,您会发现它很容易。
答案 1 :(得分:0)
如果您使用的是ExtJS 4.0.2a,那么set the scopeResetCSS BEFORE the include.
但是,我刚刚切换到ExtJS 4.0.7,问题又回来了。 :(
答案 2 :(得分:0)
在遇到这篇文章之前,我向similar question询问了ExtJS 4.2.1。我采用的解决方案是在加载ExtJS后修改DOM,并为DOMNodeInserted事件添加一个监听器,以监视并处理ExtJS组件(如选择列表)的自动创建。如果您有兴趣,可以在这里找到我的答案:https://stackoverflow.com/a/29934347/857209