使用dojo的样式为什么只有在IE下能显示,其余浏览器都没有dojo的样式?
我引用的dojo是1.9.2版本的,和这个有关系么?就只是简单的引用了几个dojo文件,做了个标签的样式,但是在火狐上直接没有想要出来的dojo样式?为什么?不懂,各位大...
我引用的dojo是1.9.2版本的,和这个有关系么?就只是简单的引用 了几个dojo文件,做了个标签的样式,但是在火狐上直接没有想要出来的dojo样式?为什么?不懂,各位大侠帮忙吧!
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
@import "C:/dojo-release-1.9.2-src/dojo/resources/dojo.css";
@import "C:/dojo-release-1.9.2-src/dijit/themes/tundra/tundra.css";
</style>
<script type="text/javascript" djConfig="parseOnLoad: true, isDebug: false" src="C:/dojo-release-1.9.2-src/dojo/dojo.js"> </script>
<script type="text/javascript">
dojo.require("dojo.parser");
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.TabContainer");
dojo.require("dijit.form.ValidationTextBox");
dojo.require("dijit.form.DateTextBox");
</script>
<style>
.lable{
width:150px;
float:left;
}
</style>
</head>
<body class="tundra">
<div dojoType="dijit.layout.TabContainer" class="formContainer" style="height:300px;">
<div dojoType="dijit.layout.ContentPane" title="个人特质">
<lable for="firstname1" class="lable">firstname</lable>
<input type="text" name="firstname" id="firstname1" size="30" ></br>
<lable for="firstname2" class="lable">firstname</lable>
<input type="text" name="firstname" id="firstname2" size="30" ></br>
<lable for="firstname3" class="lable" >firstname</lable>
<input type="text" name="firstname" id="firstname3" size="30" ></br>
</div>
<div dojoType="dijit.layout.ContentPane" title="地址">
<label for="first_name" class="lable">First Name</label>
<input type="text" name="firstname" id="firstname1" size="30" dojoType="dijit.form.ValidationTextBox" trim="true"
propercase="true" required="true" invalidMessage="You must enter your first name" /><br/>
<lable for="email" class="lable">email</lable>
<input type="text" name="email" id="email" size="30" dojoType="dijit.form.ValidationTextBox" regExp:=".*@.*"></br>
</div>
<div dojoType="dijit.layout.ContentPane" title="联系方式">
<label for="data_move">Date of Move to this Adress:</label>
<input type="text" name="data_move" id="data_move" dojoType="dijit.form.DateTextBox" trim="true" size="30" /><br/>
</div>
</div>
</body>
</html> 展开
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
@import "C:/dojo-release-1.9.2-src/dojo/resources/dojo.css";
@import "C:/dojo-release-1.9.2-src/dijit/themes/tundra/tundra.css";
</style>
<script type="text/javascript" djConfig="parseOnLoad: true, isDebug: false" src="C:/dojo-release-1.9.2-src/dojo/dojo.js"> </script>
<script type="text/javascript">
dojo.require("dojo.parser");
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.TabContainer");
dojo.require("dijit.form.ValidationTextBox");
dojo.require("dijit.form.DateTextBox");
</script>
<style>
.lable{
width:150px;
float:left;
}
</style>
</head>
<body class="tundra">
<div dojoType="dijit.layout.TabContainer" class="formContainer" style="height:300px;">
<div dojoType="dijit.layout.ContentPane" title="个人特质">
<lable for="firstname1" class="lable">firstname</lable>
<input type="text" name="firstname" id="firstname1" size="30" ></br>
<lable for="firstname2" class="lable">firstname</lable>
<input type="text" name="firstname" id="firstname2" size="30" ></br>
<lable for="firstname3" class="lable" >firstname</lable>
<input type="text" name="firstname" id="firstname3" size="30" ></br>
</div>
<div dojoType="dijit.layout.ContentPane" title="地址">
<label for="first_name" class="lable">First Name</label>
<input type="text" name="firstname" id="firstname1" size="30" dojoType="dijit.form.ValidationTextBox" trim="true"
propercase="true" required="true" invalidMessage="You must enter your first name" /><br/>
<lable for="email" class="lable">email</lable>
<input type="text" name="email" id="email" size="30" dojoType="dijit.form.ValidationTextBox" regExp:=".*@.*"></br>
</div>
<div dojoType="dijit.layout.ContentPane" title="联系方式">
<label for="data_move">Date of Move to this Adress:</label>
<input type="text" name="data_move" id="data_move" dojoType="dijit.form.DateTextBox" trim="true" size="30" /><br/>
</div>
</div>
</body>
</html> 展开
1个回答
展开全部
这个应该是浏览器安全机制的问题,具体为什么没有深入了解过,除了IE之外的其他浏览器貌似都不可以动态的调用JS(dojo的require机制),也就是说在其他浏览器都无法找到对应的JS,应该都已经报错了,所以样式才没有生效。
解决方法有2个:
把dojo的链接换成CDN的地址。
比如dojo.js可以引用//ajax.googleapis.com/ajax/libs/dojo/1.9.2/dojo/dojo.js;
css也可以换成对应的链接。把dojo的源文件包放在tomcat或者什么server的项目里,然后把链接改成server的链接。
追问
我知道问题在哪了,是我的引用路径不对,搞不清楚为什么,我把html文件和dojo源文件放在同一个目录下引用相对路径就解决了,郁闷,为什么绝对路径只有IE能够解析。哎。。还是谢谢你了。
追答
我也在学习dojo中,之前也遇到过类似问题,我觉得可能还是其他浏览器的限制原因,导致dojo的require那些语句不好用了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询