[英]Angular Stopping event propagation
這是我以前的擴展張貼在這里 。 我把一切都搞定了,但我有一個問題。 當我開始介紹時,下拉菜單打開就像我想要的那樣,但是當我點擊介紹窗口內的按鈕(下一個,上一個)時,下拉菜單關閉。 如果我使用我的箭頭鍵導航介紹它保持打開狀態。 那么即使我使用介紹窗口按鈕導航介紹,如何讓下拉列表保持打開狀態。
這是js部分供參考:
MainCtrl.prototype.startHelp = function() {
var _this = this;
_this.$timeout(function () {
angular.element('#drop-down').click();
}, 0, false);
_this.CallMe();
};
你可以嘗試添加以下按鈕單擊事件處理函數:
function onClickedNext(event) {
...
event.preventDefault();
event.stopPropagation();
}
這可能為時已晚。 但我通過修改intro.js代碼實現了這一點。 只需停止intro.js文件中定義的“nextTooltipButton”中的單擊事件傳播即可。
更改onclick listner函數:
//next button
var nextTooltipButton = document.createElement('a');
nextTooltipButton.onclick = function() {
if (self._introItems.length - 1 != self._currentStep) {
_nextStep.call(self);
}
};
至 :
//next button
var nextTooltipButton = document.createElement('a');
nextTooltipButton.onclick = function() {
if (self._introItems.length - 1 != self._currentStep) {
_nextStep.call(self);
var e = window.event;
e.stopPropagation();
}
};
適用於Chrome瀏覽器版本56.0.2924.87。 截至今天,這段代碼片段就在這里 。
我們不需要角度方面的其他變化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.