我正在尝试将事件附加到WinJS应用程序中的flipView控件。
我在“page2.html”
中有HTML <div id="galleryTemplate" data-win-control="WinJS.Binding.Template">
<div class="overlaidItemTemplate">
<img class="image " src="#" data-win-bind="src: picture; alt: title" />
<div class="overlay">
<h2 class="ItemTitle" data-win-bind="innerText: title"></h2>
</div>
</div>
</div>
<div id="page2FlipView"
data-win-control="WinJS.UI.FlipView"
data-win-options="{ itemDataSource: EtnologijaGallery.itemList.dataSource,
itemTemplate: galleryTemplate }">
</div>
和“page2.js”的pages.define部分中的javascript
processed: function (element, options) {
myFilpView = document.getElementById("page2FlipView").winControl.addEventListener("pageselected", handlePageSelected);
console.log(myFlipView)
}
此代码将附加并触发事件,但myFlipView的值为“未定义”,我收到错误“Unable to get property 'addEventListener' of undefined or null reference
”
我还尝试在pages.define部分的ready函数中添加javascript代码,但是我得到了相同的结果。
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
我最终找到了解决方案。 我换了
myFilpView = document.getElementById("page2FlipView").winControl;
带
myFlipView = element.querySelector('#page2FlipView').winControl;
一切都开始奏效了。