申し訳ありませんが、コンピューターに問題が発生したため、再起動する必要がありました。
まず、ページ自体にアクセスできる場合は、次の行を削除します。
<script type="text/javascript" src="jquery-1.3.1.js"></script>
そしてそれを次のように置き換えます:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
そのバージョンの jQuery は 2009 年 1 月にリリースされました。以下$.fadeToggle()
で使用する方法は、1.4.4 で導入されました。
以下で私が何をしたかを理解できるはずです。ご不明な点がございましたら、お知らせください。ドラッグアンドドロップではありません。以下の fiddle デモにも CSS がありますが、デモに関連する部分のみを含めました。
$(function load(){
var $my = $('#my'),
$comment = $my.find('.comment'),
$siblings = $my.find('.siblings');
$my.click(function toggle(){
$comment.text($siblings.not(':hidden').text());
$siblings.toggleClass('green').fadeToggle();
});
});
http://jsfiddle.net/userdude/ULDKg/
これは、動作している CSS とマークアップです。
.siblings.hidden {
display: none;
}
.siblings.green {
background: green;
}
<div id="my">
<div class="comment">Click for the comment...</div>
<div class="siblings green">I don't know...</div>
<div class="siblings hidden">What is it?</div>
</div>
Firefox、Chrome、および IE 7-9 でテストしましたが、問題なく動作します。ただし、少なくとも v1.4.4 以降が必要です。
また、これは の短縮形を$(document).ready()
使用していることにも注意してください。これは、ページが解析され、DOM が (全体として) アクセスできるようになるまで待機することを意味します。代わりに使用できますが$(window).load()
、動作しますが、ここに表示されているものは、既に行われたことを模倣しています (これは問題ありません)。少なくともページが解析されるまで待つ必要があることに注意してください。または、コードが含まれている場所でアクセスしている要素を追跡する必要があるラッパーメソッドのいずれかが必要です。