2011-01-31 203 views
3

这里共有JS noob。我有以下线实现了jQuery的滑块:如何将匿名函数转换为常规函数?

<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情况下,#lblInfo获取其文本设置为left。这工作正常。但是,我想将处理幻灯片事件的内联匿名函数转换为常规函数。

有人可以帮忙吗?

+0

@ Ivo JS对我来说是一件新事物(上次我使用它是在1999年)。我甚至不确定匿名函数是否在JavaScript领域被调用。 – AngryHacker 2011-01-31 21:35:43

+0

它永远不会令我惊讶PPL假设高代表知识的所有主题和语言... – Basic 2011-01-31 21:38:41

回答

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击败我吧 – 2011-01-31 21:22:03

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

    } 

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

会做到这一点。这显然不是一个理想的解决方案,因为它仍然使用匿名,但是,你需要操作功能手动

+0

@Rudu当然你是对的 - 我已经纠正了我的答案 – Basic 2011-01-31 21:22:36

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 
});