2

これが私のコードです:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">     
$(".social").hover(function() {
        $("h1", this).hide();
        $(".networks", this).fadeIn();
    }, function() {
        $(".networks", this).hide();
        $("h1", this).fadeIn();
    });
</script>

<style>
.networks {
    display:none;
}
</style>
</head>

<body>
<div class="social">
    <h1>Share this</h1>
    <div class="networks">
        <p>Twitter</p>
        <p>Facebook</p>
    </div>
</div>      

</body>
</html>

http://jsfiddle.net/ppksR/で試してみると、実際に機能していますが、Dreamweaverにコピーして貼り付けると、機能しません。私は何を取りこぼしたか???何か助けはありますか?

4

5 に答える 5

1

jsfiddleはJavaScriptコードをでラップしてonLoadいます。これを実行する必要があります。スクリプトの内容を次のようにラップします。

$(function () {
    // your code
});

jsfiddleに実行していることをエミュレートさせるには、を次のように変更しますonLoadNo wrap - in <head>

于 2013-03-04T00:55:18.533 に答える
0

あなたの問題は基本的なjQuery 101です....コードが起動しているときに要素が存在しません。

コードを で囲むdocument.readyか、参照する要素の後にコードを配置します

API リファレンス: http://api.jquery.com/ready/

より良い説明のために、ドキュメントのHow jQuery Worksも読む価値があります。

編集jsfiddle で reson コードが機能するのは、左上のドロップダウンが原因onLoadです。fiddle は、ロード ハンドラーが選択されている場合にコードを自動的にラップします。

于 2013-03-04T00:55:47.280 に答える
0

あなたはそれをラップする必要があります:

 $( function(){ .....

 } );

これにより、ブラウザーがすべての HTML を読み取るまで、コードが実行されないようになります。.social現在、要素が定義される前にコードを実行しています。

于 2013-03-04T00:56:05.080 に答える
0

別のエディター/ブラウザーでそのコードをローカルで試しましたか? DW が jQuery を正しくロードしていない可能性があります。コードをプレーン テキスト ファイルに貼り付けて、ブラウザーでページをテストしましたか?

于 2013-03-04T00:57:23.013 に答える
0

それは単なるアイドルスクリプトです。

$(document).ready(function(e) {
 $(".social").hover(function() {
    $("h1", this).hide();
    $(".networks", this).fadeIn();
    }, function() {
    $(".networks", this).hide();
    $("h1", this).fadeIn();
    });
});

この行$(document).ready(function(e) {により、スクリプトによって onLoad が開始されます。

これはあなたのコードが行うことです。http://jsfiddle.net/3SKqQ/

于 2013-03-04T01:04:07.117 に答える