如何将mouseenter事件监听器附加到sap.m.StandardListItem?

时间:2013-10-10 12:03:56

标签: javascript-events sap attachevent sapui5

我需要在拖动时检索附加到standardListItem的一些数据。我正在使用jQuery-UI draggable处理拖动。我做了以下事情:

var oItemTemplate = new sap.m.StandardListItem();
oItemTemplate .bindProperty("title", "ListModel>oLabel");
oItemTemplate .data("usefulListData","ListModel>EdmType");
oItemTemplate .addStyleClass("Draggable");
oItemTemplate .setType(sap.m.ListType.Active);
oItemTemplate .attachPress(function( ){
console.log(this.data("usefulListData"));
console.log("item pressed");
});

但数据检索仅在单击StandardListItem时有效,拖动元素时不起作用。因此,我们的想法是在mouseenter上附加数据检索,如何将事件监听器附加到mouseenter事件中。

由于 穆罕默德·阿里

2 个答案:

答案 0 :(得分:3)

您可以将浏览器事件附加到任何控件,如下所示。

oItemTemplate.attachBrowserEvent("mouseenter", function(oEvent) {
    //get your model and do whatever you want:
    oModel = sap.ui.getCore().getModel();
});

答案 1 :(得分:2)

在从sap.ui.core.Control继承的每个对象上都有一个名为attachBrowserEvent的函数: https://openui5.hana.ondemand.com/#docs/api/symbols/sap.ui.core.Control.html#attachBrowserEvent

使用该功能,您基本上可以绑定到浏览器提供的任何本机事件。

BR 克里斯