1

div で .effect( "bounce", "slow" ) を使用しようとしましたが、代わりにさらに 3 つの div が表示されました。問題をテキストで説明するのは非常に難しいため、下部に JSFiddle リンクを含めました。

それが私のコードかどうかわからなかったので、ソース全体をドキュメントから直接 JSFiddle にコピーし、同じ結果を得ました。

http://jsfiddle.net/ryBjh/

コードは次のとおりです。

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>effect demo</title>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css">
    <style>
    div {
        width: 100px;
        height: 100px;
        background: #ccc;
        border: 1px solid #000;
    }
    </style>
    <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
    <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
</head>
<body>

<p>Click anywhere to apply the effect.</p>
<div></div>

<script>
$( document ).click(function() {
    $( "div" ).effect( "bounce", "slow" );
});
</script>

</body>
</html>

Chrome でテスト済み スクリプトは ie8 と firefox で正常に動作します...これは chrome のバグですか?

4

1 に答える 1

0

どうやらchromeはページに追加のdivを追加し、cssスタイルとアニメーションをすべてのdiv要素に適用したようです。divは1つしかないようですが、ブラウザは独自のdivをいくつか挿入していました。

.boxクラスにのみ影響し、すべてが意図したとおりに機能するようにコードを変更しました。

すべてのブラウザで機能する新しいコードは次のとおりです。

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>effect demo</title>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css">
    <style>
   .box {
        width: 100px;
        height: 100px;
        background: #ccc;
        border: 1px solid #000;
    }
    </style>
    <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
    <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
</head>
<body>

<p>Click anywhere to apply the effect.</p>
<div class= 'box' ></div>

<script>
$( document ).click(function() {
    $( ".box" ).effect( "bounce", "slow" );
});
</script>

</body>
</html>​
于 2012-12-04T16:38:36.077 に答える