easyui的layout载入渲染的问题

流海 发布于 2013/12/08 22:14
阅读 2K+
收藏 0
今天在ie和ff下测试了页面后,想再在chrome下测试一下,结果果然发现问题:
layout不会自动填满全部屏幕(整个layout只占了页面上半部分,每次刷新高度不定,估计在500-600px之间变化),但是改变一下浏览器窗口大小就立刻填满了,可是用户会认同这件事情吗?就算用户认同自己看着也不爽啊
就将之前测试正常的代码反过来比较,结果最终发现问题出在js位置的问题上,这个问题真的是莫名其妙,请听我往下说:

最开始的结构(不是代码)是这样的:(这也是显示正常的情况)

<html>
<scriptsrc="...."></script>   <!--  一堆  全部是库,jquery、easyui、jquery-ui的核心库(测试了是不冲突的)uploadify  tag-it-->
<linkhref="......"rel="stylesheet"type="text/css"/>   <!--  一堆  -->
<body>
    <!--  dom   -->
</body>
<scripttype="text/javascript">
//我的代码
function act1(){};
function act2(){};
$(document).ready(function(){
    //code...
});
</script>
</html>



这样的结构是因为当时在直接写的时候没有把css和js独立出来,所以除了引用的css和js库外,页面的body屁股后面还跟了js代码(css不要理会它了)

而现在显示异常的结构就是页面只是body和css以及js的引用,其余全部是外部链接,当然js的顺序是正常的(ff和傲娇的ie下都没有问题,而且在chrome下功能也是正常,只是layout的渲染不对头)

因为两份效果完全不一样,所以只有将显示正常的代码(一份文件)逐渐替换成现在的异常代码(页面+css+js),逐步将外部代码按照顺序拷贝进去,然后拷贝document.ready中的代码,测试下来显示效果完全正常,功能也完全正常
郁闷不知道是怎么回事,但是两份页面还不一致,因为还有本身包含以及外链的区别,就先将css以外链的方式导入,正常,然后将js以外链的方式导入,结果情况再现了
这个时候结构是
<html>
<scriptsrc="...."></script>   <!--  一堆  全部是库,jquery、easyui、jquery-ui的核心库(测试了是不冲突的)uploadify  tag-it-->
<scriptsrc="test.js"></script>   <!-- 看这里 -->
<linkhref="......"rel="stylesheet"type="text/css"/>   <!--  一堆  -->
<body>
</body>
</html>




实际上不出问题才更加会让人奇怪把人逼疯,因为这个情况和layout渲染不对头的页面一模一样
由于实际js代码完全一致,故怀疑是

$(document).ready(function(){
    //code...
});



的问题,

毕竟一个在本身页面一个在外部js(但这也是一个不可能的事情,对吧?)
就又将这个拷贝回去,结果立马又正常了!!! 这是神马情况!!!!

头脑发热将代码又拷贝回去,这个时候结构如下

<html>
<scriptsrc="...."></script>   <!--  一堆  全部是库,jquery、easyui、jquery-ui的核心库(测试了是不冲突的)uploadify  tag-it-->
<linkhref="......"rel="stylesheet"type="text/css"/>   <!--  一堆  -->
<body>
</body>
<scripttype="text/javascript">    //看这里
$(document).ready(function(){
    //code...
});</script>
</html>



结果又是正常的!!!!!这个时候我就像吃了翔一样目瞪口呆,这是什么情况?

又小心翼翼地测试了几次,并在现在显示异常的代码上做测试,发现,和document.ready没关系,如果页面包含
<script type="text/javascript">
</script>



那么显示就正常,如果不包含这个,那么就会出现layout只占半个屏幕的情况,我崩溃了,完全不知道这事情怎么说理去
或许是js的基础功底不够,对easyui也不熟悉,但是真心希望这个诡异的问题(至少对于我来说是这样的)能得到指点,到底怎么回事这是?
加载中
0
gnefil.nil
gnefil.nil
基本不清楚你在说什么,我建议你书写还是规范点好,前面的script和link都放到head里面,link在script前面,后面的script放到body里面
0
lkfoff
lkfoff
lz使用写博客的写问答。。。
返回顶部
顶部