我使用了ice:dataTable组件来显示数据,不知何故在目标div中有一个默认的onscroll事件,这对我没有任何意义,并且它给页面中的其他float元素带来了一些定位问题。我想禁用此操作,但我没有找到任何方法来控制它。
它调用了以下函数:
var input = document.getElementById('targetId'); clearTimeout(ice.pid);
ice.pid = setTimeout(function() {
input.value =
document.getElementById('targetId_scroll').scrollTop;
window.iceSubmitPartial(null, input, event);
}, 400);
答案 0 :(得分:0)
我遇到了与ICEFaces类似的问题,当我们升级JSF和ICEFaces版本时,最好的解决方案是更改标签: ice:dataTable 标记为 ace:dataTable ,以及 ice:列中的列到 ace:列。< / p>
但是,如果你没有升级ICEFaces版本,我猜你可以在代码的某些方面使用JavaScript或jQuery删除onscroll属性,例如:
document._getElementsByXPath("//div[contains(@onscroll,'scroll')]")[0].removeAttribute("onscroll")
这个不是一个好的,只是一个例子,因为你可以从其他表中删除滚动。
jQuery('.myClass div[id$="_scroll"]')[0].removeAttribute("onscroll")