1
indexOf
메서드와 함께 delegate
메서드를 사용하여 YUI에서 탭 색인을 얻으려고합니다. 구체적으로는 리 내부에있는 이미지 클릭에 탭을 제거하고 싶습니다. 요소 :클릭시 노드 색인 얻기
var tabView = new Y.TabView({
srcNode: '#data-table'
});
...
//creating tabs
...
var removeTab = function(e) {
var tabList = e.container.all('li'); //returns a list of the 'li' elements/tabs
tab = tabView.indexOf(e.currentTarget);
alert(tab); //returns -1 (node not found)
//tabView.remove(tab);
}
Y.one('#data-table').delegate('click', removeTab, 'img');//on click of the img, launch removeTab
나는 유이가 내가 찾은이 가장 가이드를하는 간단한 방법을 가지고 있다고 생각하지 않는 구식 또는 탭 같은 방법으로 제거 구현하지 않습니다.
정말 감사하고 설명 @의 raina77ow에 대한 :
한 가지 가능한 솔루션은 다음의 인덱스를 확인 먼저
<img>
요소의<li>
부모를 찾는 것입니다. 나는 'li'자체보다는 이벤트를 트리거하기 위해 li 요소 내에 아이콘을 가지고 있기 때문에 delegate 함수에서 'li img'를 매개 변수로 유지할 수있었습니다. –