我有一个使用html为我预生成的页面,它看起来像一个可滚动的div列表,类似于:
<html> <div id="a"> <div>Item A</div> </div> <div id="b"> <div>Item B</div> </div> </html>
我想在我的入口点方法中抓取它们,并为每个方法添加一个单击处理程序.我无法弄清楚如何做到这一点.我有类似的东西:
public void onModuleLoaded() { RootPanel rp1 = RootPanel.get("a"); rp1.addClickHandler(...); // can't do this. }
如何在GWT中点击其中一个项目?有没有办法我可以安装一个全局点击处理程序,只是查看点击项目的ID并过滤掉它?我不一定需要为每个元素添加一个单击处理程序(如果你有许多需要点击处理程序的元素,我认为文档建议不要这样做),
谢谢
谢谢
解决方法
我没有对此进行测试,但总体思路是正确的,并且很容易扩展到多个目标元素.您可能希望事先存储DOM.getElementById()返回的元素以保持快速.请记住,将为每个用户事件调用onPreviewNativeEvent(),因此请保持亮.
Event.addNativePreviewHandler(new NativePreviewHandler() { public void onPreviewNativeEvent(NativePreviewEvent event) { if (Event.as(event).getTypeInt() == Event.ONCLICK && DOM.isOrHasChild(DOM.getElementById("A"),Element.as(event.getEventTarget()))) { // Element 'A' was clicked. } } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。