0

IE8 で複数のオプションを使用しているときにパフォーマンスの問題に直面しています (残念ながら、IE8 は私のプロジェクトの公式ブラウザーです)。

Primeface の例を 1 つずつたどりますが、それでも IE でのユーザー エクスペリエンスは非常に貧弱で、選択が非常に遅いことを意味します。

興味深い部分は、4.0 を使用する ShowCase の例 (私は 3.4 を使用しています) が IE8 経由で非常にうまく機能していることです (リストが小さいためか?)。

<p:dataTable id="tmpCoreTable"
             var="acq"
             value="#{report.dataModel}"
             selection="#{report.selected}"
             paginator="true" 
             rows="10">
    <f:facet name="header">  
        Base   
    </f:facet>
    <p:column selectionMode="multiple"/> 
    <p:column headerText="id">  
        <h:outputText value="#{acq.rowNum}"/>  
    </p:column>
    <p:column headerText="network code">  
        <h:outputText value="#{acq.networkCode}" />  
    </p:column>
</p:dataTable>

public class ReportBean implements Serializable {

 private TmpDataModel dataModel;
 private List<Report> list;
 private Report[] selected;

public ReportBean() {
    list = new ArrayList<Report>();
    // db 
    list.addAll(ReportHelper.getAll());
    dataModel = new TmpDataModel(list);
}


public class TmpDataModel extends ListDataModel<Report> implements SelectableDataModel<Report> {

public TmpDataModel() {
}

public TmpDataModel(List<Report> data) {
    super(data);
}

@Override
public Object getRowKey(Report t) {
    return t.getRowNum();
}

@Override
public Report getRowData(String rowKey) {   
    List<Report> cars = (List<Report>) getWrappedData();
    for (Report r : cars) {
        if (String.valueOf(r.getRowNum()).equals(rowKey)) {
            return for1;
        }
    }
    return null;
  }
 }





<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<f:view>
    <h:head>
        <meta HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=UTF-8"/>
        <script type="text/javascript" language="Javascript" src="resources/js/adm_js.js" />
        <h:outputScript name="jsf.js" library="javax.faces" target="head"/>
        <ui:insert name="head"/>
    </h:head>
    <h:body>
        <h:outputStylesheet name="css/adm_css.css"/>
        <ui:insert name="content"/>
    </h:body>
</f:view>

ps: アプリを IE9 でテストしたところ、より高速に動作しましたが、ShowCase の例が IE8 で動作する理由と方法をまだ理解していません。

どんなアドバイスもとても役に立ちます

ありがとう

4

0 に答える 0