动态创建的dojo组件不会应用CSS样式

时间:2013-01-04 09:18:57

标签: javascript html css dojo

我有一个html文件,我在其中实例化了一个新的Javascript对象。代码我动态创建一些dojo组件。我有HTML文件中包含的CSS样式。但组件没有得到正确的外观。我错过了什么吗?

以下是我的一些代码: 创建组件:

 var buttonToolbar = new dijit.Toolbar({});     
    buttonToolbar.addChild(
        new dijit.form.Button({
            label: "1x1 layout",
            onClick: function() { mv.createLayout(1, 1);},
            iconClass: "myIcon1",
            class: "dhButton"
        })
    );

HTML头:

<link rel="stylesheet" href="css/main-demo.css" media="screen" />
 <link rel="stylesheet" href="js/vendor/dh/medview/css/medview.css" media="screen" />
        <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dijit/themes/claro/claro.css" media="screen" />
        <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojox/widget/Dialog/Dialog.css" /> 
        <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/dojo.xd.js"></script>
           <script type="text/javascript">
            dojo.require("dijit.form.Button");     
        </script>
        <script type="text/javascript">

                   dojo.addOnLoad(function(){
                    //new object creation
                        }
                    );
                });
            </script>

1 个答案:

答案 0 :(得分:0)

您必须将类claro添加到body标记中。

<body class="claro">

指南:https://dojotoolkit.org/reference-guide/1.9/dijit/themes.html

再次检查您是否已在此dojoConfig中设置parseOnLoad

dojoConfig = {
    parseOnLoad: true
};

注意:如果您使用parseOnLoad: true,则不应使用parser.parse() See more here.