我正在嘗試在angularJS中執行slider
。我有一個事件監聽器的子指令。當主事件(mousedown
)被監聽時,它會從父指令(通過控制器)調用一個函數並更改各種html元素的樣式。當頁面上只有一條指令時,它就像一個魅力一樣。如果有多個,每個父控制器都會被調用。 我不明白爲什麼。子指令訪問每個父指令
Plknr:http://plnkr.co/edit/9vGXxjDbqqEOzLcXRkoW?p=preview
家長指令:
return {
restrict: 'EA',
scope: {
sliderStep: '@',
sliderBothHandles: '@',
sliderMinVal: '=', //value min handle
sliderMaxVal: '=', //value max handle
sliderMin: '@', //minimum value authorized
sliderMax: '@' //maximum value authorized
},
templateUrl: 'slider_template',
controller: sliderController,
transclude: true
};
兒童指令:
return {
restrict: 'EA',
link: link,
require: '^mcsSlider',
scope: true
};
標記:
<mcs-slider slider-step="1" slider-max-val="formCtrl.value1" slider-min="0" slider-max="7200">
<div mcs-slider-handle class="slider-handle max-slider-handle round" aria-valuemin="0" aria-valuemax="7200" aria-valuenow="{{formCtrl.value1}}" tabindex="0" style="left:0%;"></div>
</mcs-slider>
我仍然試圖找出'mcsSliderHandle'指令中的'$ interval'。 可以'$('。min-slider-handle').css('left')'成爲問題嗎? – elTomato