0

是否有可能让我们说,我有它的链接看起来像

<a href="something/" class="something" data-callback="thisFunction">
<a href="something/" class="something" data-callback="thatFunction">
<a href="something/" class="something" data-callback="anotherFunction">
<a href="something/" class="something" data-callback="">

<script>
     $('.something').click(function(e)
     {
        e.preventDefault();
        var cb = $(this).data('callback');
        if(cb !== undefined && cb !== null && cb !== '')
        {
           //somehow use cb as a means to call another function
           //similar in effect to calling "thatFunction();"
        }
     });
    function thisFunction()
    {
       //code
    }
    function thatFunction()
    {
       //code
    }
    function anotherFunction()
    {
       //code
    }
</script>

如果可能的话,我将如何实现使其工作,以及该类型调用的实际参考是什么,例如如果我忘记了,将来​​需要这样做的方法是什么,希望我能记住该方法是什么打电话给我,我可以查一下。

4

2 回答 2

3

您可以使用以下内容:

window[cb]();

或者为了安全起见:

typeof window[cb] === "function" && window[cb]();
于 2013-01-22T21:05:12.957 回答
0

在您的示例中,您可以从窗口对象调用此回调函数。像window[cb]这样的东西。但这不是分配此类全局函数的好习惯。我建议您将回调包装在某个对象中。

于 2013-01-22T21:09:59.080 回答