關於EasyUI對話方塊,表格和選單元件在IE下的相容性處理方法
阿新 • • 發佈:2018-12-25
EasyUI版本:V1.4
JQuery版本:V1.11.1
一、對話方塊
定義對話方塊:
<div id="test_dialog" class="easyui-dialog" closed="true" buttons="#test_dialog_buttons"></div> <div id="test_dialog_buttons"> <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="javascript:$('#test_dialog').dialog('close')" style="width: 90px;">Save</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#test_dialog').dialog('close')" style="width: 90px;">Cancel</a> </div>
開啟對話方塊:
function openTestDialog() {
$("#test_dialog").dialog({
title: "Test Dialog",
width: 300,
height: 200,
modal: true
});
$("#test_dialog").dialog("open");
}
顯示效果:
很明顯,使用這種方式開啟對話方塊是不正確的,應該修改為使用另外一種方式開啟。
首先,修改對話方塊定義:增加對話方塊width,height,modal屬性定義。
<div id="test_dialog" class="easyui-dialog" <span style="color:#FF0000;">style="width: 300px;height: 200px;" data-options="modal:true"</span> closed="true" buttons="#test_dialog_buttons"></div>
其次,修改開啟對話方塊的方式:
function openTestDialog() {
$("#test_dialog").dialog("open").dialog("setTitle", "Test Dialog");
}
修改後的顯示效果:
二、表格
定義表格:
<table id="test_table" class="easyui-datagrid" url="/agency.do?action=list" toolbar="#test_table_toolbar" pagination="true" fitColumns="true"> <thead> <tr> <th data-options="field:'no',width:50">Test1</th> <th data-options="field:'name',width:50">Test2</th> <th data-options="field:'phone',width:50">Test3</th> <th data-options="field:'address',width:50">Test4</th> <th data-options="field:'sale_number',width:50">Test5</th> <th data-options="field:'stock_number',width:50">Test6</th> <th data-options="field:'operation',width:50">Test7</th> </tr> </thead> </table> <div id="test_table_toolbar"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="openTestDialog()">測試</a> </div>
顯示效果:
為了使表格列按比例填充滿表格,應該修改表格列定義:分別明確指定field和width屬性。
<table id="test_table" class="easyui-datagrid" url="/agency.do?action=list" toolbar="#test_table_toolbar" pagination="true" fitColumns="true">
<thead>
<tr>
<th <span style="color:#FF0000;">field="no" width="50"</span>>Test1</th>
<th field="name" width="50">Test2</th>
<th field="phone" width="50">Test3</th>
<th field="address" width="50">Test4</th>
<th field="sale_number" width="50">Test5</th>
<th field="stock_number" width="50">Test6</th>
<th field="operation" width="50">Test7</th>
</tr>
</thead>
</table>
<div id="test_table_toolbar">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="openTestDialog()">測試</a>
</div>
修改表格列定義之後的顯示效果:
三、選單
關於選單元件的顯示,必須明確定義寬度和高度,否則在IE下顯示不正常。
ep:
<div id="mm" class="easyui-menu" style="width: 120px;">
<div style="<span style="color:#FF0000;">width: 120px;height: 25px;</span>">New</div>
<div style="width: 120px;height: 25px;">
<span>Open</span>
<div style="width: 150px;height: 80px;">
<div>Excel</div>
<div>PowerPoint</div>
</div>
</div>
<div style="width: 120px;height: 25px;" data-options="iconCls:'icon-save'">Save</div>
<div class="menu-sep"></div>
<div style="width: 120px;height: 25px;">Exit</div>
</div>
四、關於IE下相容性問題處理的思考
在使用某個前端UI框架時,必須要考慮到對IE瀏覽器的相容性,否則使用者體驗會大打折扣。
另外,在寫自定義JavaScript程式碼時,也必須要儘量避免使用一些在IE上不能執行的API,且必須注意程式碼格式的規範性,有可能多一個符號在FireFox和Chrome下執行沒有問題,但是在IE下執行時就會報錯。
參考: