为什么这个简单的jQuery不起作用?

时间:2010-10-03 03:41:53

标签: jquery

我正在尝试将用户发送到google或yahoo,具体取决于他们点击了哪个链接,如果他们点击了第一个他们将被带到谷歌,如果他们点击了他们将被带到雅虎。

因此,对于window.location函数,我使用的是一个名为website的变量,我根据用户点击的链接定义该变量。但它不起作用。该变量未被识别:

<script type="text/javascript">
    $(document).ready(function(){

        // define the variable website based on which link is clicked
        $('a').eq(0).click(function() {
            var website = 'http://google.com';
        });
        $('a').eq(1).click(function() {
            var website = 'http://yahoo.com';
        });

        $('a').click(function() {
            window.location = website;
        });

    });
</script>

<a href="#">Link 1</a>
<br />
<a href="#">Link 2</a>

3 个答案:

答案 0 :(得分:1)

更好的方法 -

<script type="text/javascript">
  $(document).ready(function(){
   var website = '';
   $('a').click(function() {
    var clicked = $(this).index('a');
    switch(clicked){
    case 0:
    website = "http://google.com";
    break; 

    case 1:
    website = "http://rediff.com";
    break;        
    }
     document.location= website;

     });
   });
</script>

<a href="#">Link 1</a>
<br />
<a href="#">Link 2</a>

答案 1 :(得分:0)

<script type="text/javascript">

    var _website = null;

    $(document).ready(function ()
    {
        $('a').eq(0).click(function ()
        {
            _website = 'http://google.com';
            Navigate();
        });

        $('a').eq(1).click(function ()
        {
            _website = 'http://yahoo.com';
            Navigate();
        });
    });

    function Navigate()
    {
        document.location = _website;
    }

</script>

<a id="link1" href="#">Link 1</a>
<br />
<a id="link2" href="#">Link 2</a>

答案 2 :(得分:0)

<a id="link1" href="http://google.com">Link 1</a> 
<br /> 
<a id="link2" href="http://yahoo.com">Link 2</a>