0

我希望在底部有不同边框颜色的页面上有一系列链接。显然,我可以使用针对父 div 的 CSS 来设置样式,但是我认为如果我有一组颜色值,那么使用 jquery 必须有一种更简单的方法来做到这一点。

我找到了这个函数,它在悬停时添加了边框,但我想更改它,以便将它添加到 pa 作为默认值。希望这是有道理的。

不太确定该怎么做...任何指针都会很棒...

<script>
$(document).ready(function() {
    $("p a").hover(function(e) {
        var randomClass = getRandomClass();
        $(e.target).attr("class", randomClass);
    });
});

function getRandomClass() {
    //Store available css classes
    var classes = new Array("yellow", "pink", "green", "blue");

    //Give a random number from 0 to 5
    var randomNumber = Math.floor(Math.random() * 5);

    return classes[randomNumber];
}
</script>

更新功能

   $(document).ready(function() {
 $("p a").hover(function(e)
    {
        var randomClass = getRandomClass();
        $(e.target).attr("class", randomClass);
    });
});
function getRandomClass()
{
    //Store available css classes
    var classes = new Array("yellow", "pink", "green", "blue");

    //Give a random number from 0 to 5
    var randomNumber = Math.floor(Math.random()*4);

    return classes[randomNumber];
}
$(document).ready(function() {
    $("p a").each(function() {
        $(this).addClass(getRandomClass());
    });
});
4

2 回答 2

1

这样的事情会做到这一点:

$(document).ready(function() {
    $("p a").each(function() {
        $(this).addClass(getRandomClass());
    });
});

用于.each()遍历a元素中的所有p元素并使用添加随机类.addClass()

于 2012-11-20T17:22:10.757 回答
0

这应该这样做:

$(document).ready(function() {
    $("p a").each(function(){
        $(this).addClass(getRandomClass());
    });
    $("p a").hover(function(e) {
        var randomClass = getRandomClass();
        $(this).addClass(randomClass);
    },function(e){
        $(this).removeClass();
    });
});

问题是这些类没有被删除,所以最后出现在 css 中的类将是唯一应用的类。

于 2012-11-20T17:26:20.557 回答