2011-01-31 3 views
3

총 JS 멍청한 놈. 어떻게 일반 하나에 익명 함수를 변환하는? 여기

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#wheelLeft").slider({ 
       orientation: 'vertical', value: 37, 
       min: -100, max: 100, 
       slide: function (event, ui) { $("#lblInfo").text("left"); } }); 
    }); 
</script> 

는 기본적으로 slide 이벤트는 #lblInfoleft로 설정된 텍스트를 가져옵니다 내가 jQuery를 슬라이더를 구현하는 다음과 같은 라인을 가지고있다. 이것은 잘 작동합니다. 그러나, 나는 일반 기능으로 슬라이드 이벤트를 처리하는 인라인 익명 함수를 변환하고 싶습니다.

은 누군가가 도와 줄래?

+0

를 @ Ivo JS는 저에게 새로운 것이 었습니다 (제가 마지막으로 사용한 것은 1999 년이었습니다). 나는 익명의 함수가 JavaScript 영역에서 호출 된 것인지조차 확신하지 못했습니다. – AngryHacker

+0

그것은 PPL이 높은 담당자를 가정하는 방법 저를 놀라게 결코 중단 = 모든 주제와 언어에 대한 지식 ... 물론 – Basic

답변

9
<script type="text/javascript"> 

function handleSlide(event, ui) { 
    $("#lblInfo").text("left"); 
} 

$(document).ready(function() { 
    $("#wheelLeft").slider({ 
      orientation: 'vertical', value: 37, 
      min: -100, max: 100, 
      slide: handleSlide 
    }); 
}); 
</script> 
+0

+1 그것에 나를 이길 –

2
<script type="text/javascript"> 
    function myfunc(event, ui) { 

    } 

    $(document).ready(function() { 
     myfunc(event, ui) 
    }); 
</script> 

할 것입니다. 여전히 익명을 사용하지만 수동

+0

@Rudu 당신 말이 맞아 - 내가 내 대답을 수정했습니다 – Basic

2

그냥 이름이 지정된 함수를 정의하는 기능을 조작해야하는 위치를 가지고 모든 문제를 해결해야한다 그것은 분명 이상적인 솔루션이 아니다 :

function doSlide(event, ui) 
{ 
    $("#lblInfo").text("left"); 
} 

$(document).ready(function() { 
    $("#wheelLeft").slider({ 
     orientation: 'vertical', value: 37, 
     min: -100, max: 100, 
     slide: doSlide 
    }); 
}); 
0
$(document).ready(function myFunction() { 
    // do something 
}); 
+0

흠,이 수도 네가 찾고있는 것이 아니야. 이것은()'ES5에 엄격 모드'arguments.callee를 모방 실제로 유용합니다. – nyuszika7h

관련 문제