使用数组随机更改mousein / out上的文本?

时间:2012-11-01 01:05:50

标签: jquery arrays random mouseover mouseout

我有一个非常简单但令人沮丧的问题。基本上我要做的就是当你使用MouseIn&在特定元素之外,元素文本将随机地通过数组更改。继承我的代码,从HTML开始:

<div class="logo">
    <a href="#">
        luke <span>whitehouse</span> 
    </a>
    <span class="logo-note">// front-end web designer</span>
</div>

继续JS:

$(document).ready(function() {
    var quotes = new Array("foo", "bar", "baz", "chuck");
    var randno = Math.floor ( Math.random() * quotes.length );
    $('.quote').add(quotes[randno]);

    $('.logo a').mouseover(function() {
        $('.logo-note').text(quotes[randno]);
    }).mouseout(function() {
        $('.logo-note').text(quotes[randno]);
    });
});

1 个答案:

答案 0 :(得分:1)

当鼠标超出/发出事件发生时,您需要获取随机文本。在您的代码randno中计算一次并且永远不会更改,因此您每次都会获得相同的数组元素。试试这个想法

$('.logo a').mouseover(function() {
        $('.logo-note').text(quotes[Math.floor ( Math.random() * quotes.length )]);
    }).mouseout(function() {
        $('.logo-note').text(quotes[Math.floor ( Math.random() * quotes.length )]);
    });