2010-04-11 6 views
1

는 I는 다음과 같은 방법으로 jQuery를 UI 슬라이더의 값을 설정하는 것이 가능하다 발견 예상대로프로그래밍 방식으로 jQuery UI 토글을 설정하는 방법은 무엇입니까?

$("#mySlider").slider("value", 42); 

이 슬라이더에 연결된 이벤트 핸들러를 트리거한다.

이제 버튼 (토글)을 사용하여 동일한 트릭을 수행하려고합니다. API에서이 작업을 수행하는 좋은 방법이없는 것 같습니다. 나는 간단한 것을 놓치고 있을지도 모른다.

$("#myButton").button().click(); 

이 경우에 그 처리 방법을 모든 아이디어를 환영합니다 :

는 내가 어떤 결과를 다음을 시도했다. 버튼셋에도 적용되는 솔루션을 찾는 것이 좋습니다. 나는 사용자를 시뮬레이션이 특정 기능을 필요로

편집

참고.

function toggleBrushValue(hotkey, attributeName) { 
    shortcut.add(hotkey, function(e) { 
     //XXX: the missing part 
     $("#" + attributeName).<something?>; 
    }); 
} 

function increaseBrushValue(hotkey, attributeName) { 
    shortcut.add(hotkey, function(e) { 
     var currentSize = $("#" + attributeName).slider("value"); 

     $("#" + attributeName).slider("value", currentSize + 1); 
    }); 
} 

답변

1

오래 걸리지 만 마침내 문제를 해결할 방법을 찾았습니다. :) 여기 내 솔루션입니다 :

var $toggle = $("#" + attributeName); 

$toggle.attr("checked", !$toggle.attr("checked")).button("refresh"); 

의 jQuery UI 토글은 "검사"를 통해 자신의 초기 값을 얻을로

, 내 이점에 그것을 사용하기로 결정했다. "새로 고침"을 클릭하면 해당 시각적 상태도 업데이트됩니다.

1

는 다음과 같이() .toggle 사용해보십시오 : 다음은 문제를 더 잘 설명하기 위해 몇 가지 코드입니다

$("#myButton").toggle(
    function() { 
     $("#mySlider").slider("value", 42); 
    }, 
    function() { 
     // something else... 
    } 
); 

그것은에서 작동이 버튼 설정 올바른 선택을 제공하기 때문에 너무. 예를 들어

<input id="myButton" ...> 
<input id="myButton" ...> 
<input id="myButton" ...> 

$('#myButton').toggle() 위의 각 요소에 대해 실행된다. 또한 함수 자체 내에서 버튼과 상호 작용해야하는 경우 this 또는 $(this)을 사용하십시오. 예를 들면 다음과 같습니다.

$("#myButton").toggle(
    function() { 
     alert($(this).attr('id')); 
    }, 
    function() { 
     alert($(this).attr('name')); 
    } 
); 
+0

슬라이더 예제의 아이디어는 예상되는 API와 요소에 연결된 모든 처리기를 호출 할 필요성을 설명하기위한 것입니다. 바로 가기를 통해 토글의 상태를 수정해야합니다. 나는 이것을 강조하기 위해 질문을 편집 할 것이다. –

+0

토글 버튼을 계속 사용하고'$ ("myButton"). trigger ('click')'을 호출하여 click 이벤트를 트리거 할 수 있습니다. – jweyrich

관련 문제