0

助けてくれてありがとう。それはjsfiddle / jsbin(ロールオーバーとアウトの両方)で完全に機能しますが、ブラウザで実際に機能するようには見えません。

JavaScript - Math.random などの学習方法に一致するように、皆さんの助けから少し編集しました

colors = ['red','blue','green','gray','black','yellow'];
$(".test a").hover(function() {
  randomColor = Math.floor(Math.random() * colors.length - 1)
  $(this).css('color',colors[randomColor])
    }, function() {
      $(this).css('color', '#000000')
});

HTML (実際には別の html を使用していますが、これは jsbin からプルされており、機能しません)

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js"></script>  
<script type="text/javascript" src="randomcolor.js"></script>
<!--[if IE]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
  article, aside, figure, footer, header, hgroup, 
  menu, nav, section { display: block; }
</style>
</head>
<body>
    <div class="test"><a href="http://test.com">WORKKKKK</a></div>
</body>
</html>

ブラウザ コードとの唯一の違いは、randomcolor.js ファイルに js があり、ヘッダーで次のように呼び出されることです。

<script type="text/javascript" src="randomcolor.js"></script>

私がオンラインで見つけたものから、これは「オンロード」に関連していますか? どうすればそれを実装できますか? また、このスクリプトを本文の html に直接入れようとしましたが、まだ機能しません。

しかし、繰り返しますが、最初に助けてくれてありがとう、jsfiddle で正しく動作するようにすることは間違いなく良いスタートです!

また、できるだけ多くの情報を提供するために-このオンロードを追加しようとしましたが、まだ機能していません

$(window).load(function(){
    colors = ['#ffffff', 'blue', 'green', 'gray', 'black', 'yellow'];
    $(".test a").hover(function() {
        randomColor = Math.floor(Math.random() * colors.length - 1)
        $(this).css('color', colors[randomColor])
    }, function() {
        $(this).css('color', '#000000')
    }
});
4

5 に答える 5

1

$("div.input")代わりに使用する必要があります$("div input") (間のドットを参照)

于 2012-05-03T12:08:53.603 に答える
1

このようなものが役立ちます

<div class="test"><a href="http://test.com">Test</a></div>

colors = ['red','blue','green','gray','black','yellow'];
$(".test a").hover(function() {
  rand = parseInt(Math.random()*10)%colors.length
  $(this).css('color',colors[rand])
});

チェックしてください

http://jsfiddle.net/sethunath/WNGKv/

于 2012-05-03T12:14:12.193 に答える
0

わーい。私はそれを考え出した。うまくいけば、誰もこれに取り組んでおらず、私は誰かの時間を無駄にしませんでした。私はそれをここに投稿しているので、誰か他の人が将来この問題を抱えているなら...

ドラフトビューをチェックして、jsfiddleのソースを確認しました(質問する前にこれを検討する必要があります)。そして、これをjavascriptとして表示していました->

<script type='text/javascript'>//<![CDATA[ 
$(window).load(function(){
colors = ['red', 'blue', 'green', 'gray', 'black', 'yellow'];
$(".test a").hover(function() {
    randomColor = Math.floor(Math.random() * colors.length - 1)
    $(this).css('color', colors[randomColor])
}, function() {
    $(this).css('color', '#000000')
});
});//]]>  
</script>

そこで、ランダムカラーを別のファイルとして残すことにしました。それを機能させるために、CDATAを次のように配置しました->

<script type="text/javascript" src="randomcolor.js"><![CDATA[//]]></script>

SO ....他の誰かがこのようなコード(ランダムな色、リンクホバー)を取得しようとしている場合、これが私のために機能した最終的なコードです(私が使用している実際のドキュメントとは異なります)。

HTML

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js"></script>  
<script type="text/javascript" src="randomcolor.js"><![CDATA[//]]></script>
</head>
<body>
    <div class="test"><a href="http://test.com">Please work</a></div>
</body>
</html>

JS

$(window).load(function(){
colors = ['red', 'blue', 'green', 'gray', 'black', 'yellow'];
$(".test a").hover(function() {
    randomColor = Math.floor(Math.random() * colors.length - 1)
    $(this).css('color', colors[randomColor])
}, function() {
    $(this).css('color', '#000000')
});
});

これが他の誰かに役立つことを願っています!

于 2012-05-04T03:45:32.077 に答える
0

やり方はこれ

function changcolor(){
    var link=document.getElementById("iDofyourLink").style.color = "#ffffff";
}

<a href="" onmouseover="changcolor()" id="iDofyourLink"></a>
于 2012-05-03T17:05:17.847 に答える
0

これを試してくださいhttp://jsfiddle.net/hdsuT/

$("div.input").hover(function() {
  $(this).find('a').addClass("blue");
}, function() {
  $(this).find('a').removeClass("blue");
});
于 2012-05-03T12:12:06.083 に答える