-1

私はこのコードを手に入れました。ランダムな色を生成してHEXに変換しています。次にbackgroundColor.ribbon a:hoverスパンクラスとして設定したいと思います:

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

    var randomColor = Math.floor(Math.random()*16777215).toString(16);
    alert(randomColor);
    $(".ribbon a:hover span").css({

        backgroundColor: '#' + randomColor

    });



});
</script>

これが私のcssです:

.ribbon a:hover span {
    background: /*<?php printf( "#%06X\n", mt_rand( 0, 0xFFFFFF )); ?>*/ #FFF;
    margin-top:0;
}

それは私の randomColor 変数に警告さえしません...私はこのスクリプトを</body>タグの前に置きました...

4

3 に答える 3

4

jQueryUI には jQuery が含まれていません。(前に) ロードする必要があります。

だから交換すればいい

<script src="http://www.google.com/jsapi"></script>
<!-- load JQuery and UI from Google (need to use UI to animate colors) -->
<script type="text/javascript"> google.load("jqueryui", "1.5.2"); </script>

<script src="http://www.google.com/jsapi"></script> <!-- load JQuery and UI from Google (need to use UI to animate colors) -->
<script type="text/javascript">
google.load("jquery", "1.5.2");
google.load("jqueryui", "1.5.2");
</script>
于 2012-11-23T21:24:54.833 に答える
1

最初に、jQuery をロードする必要があります。指定したコードは jQuery UI のみをロードします。

<script src="http://www.google.com/jsapi"></script>
<!-- load JQuery and UI from Google (need to use UI to animate colors) -->
<script type="text/javascript">
    google.load("jquery", "1.5.2");
    google.load("jqueryui", "1.5.2");
</script>

次に、関数をそのようにセレクターにバインドすることはできません:hover。jQuery 関数を使用する必要があります.hover

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


    $(".ribbon a").hover(function() {
        // change to random color on mouseover
        var randomColor = Math.floor(Math.random()*16777215).toString(16);
        alert(randomColor);
        $(this).find('span').css({
            backgroundColor: '#' + randomColor
        });
    }, function() {
        // change back to original color on mouseout
        $(this).find('span').css({
            backgroundColor: '#FFF'
        });
    });
});
</script>
于 2012-11-23T21:25:40.303 に答える
0

jQuery をインポートしていないか、コードのどこかに JS エラーがあり、スクリプト全体が壊れている可能性があります。まず、コンソールにエラーがないか確認してください。それでも何もわからない場合は、スクリプトを次のように変更してみてください。

<script type="text/javascript">
    $(function(){
        alert('jQuery is alive!');
    });
</script>
于 2012-11-23T21:32:23.290 に答える