最近のコメントのページ(Recent Comments)で、各コメントのタイトルにマウスオーバーするとコメントの本文を取ってきてぬるっと表示するようにした。Tumblrの notes を読み込むときみたいなアクション。結構かっこいい。
コードはこんな感じ。相変わらず無駄な変数が多い気がする。もうちょっと行数減らせそうなんだけど書き方が分からん。
// load entire comment
$(document).ready(function() {
$("#recent-comments a.taggedlink").mouseover(function() {
var loadUrl = $(this).attr("href");
var id = loadUrl.match(/#.*/);
var cid = 'div' + id;
var cip = 'div' + id + ' + p.auth' ;
var loadPath = loadUrl + ' ' + id + ' div[class=comment-content]';
$(cid).load(loadPath, function() {
$(cip).css("clear", "both");
$(this).slideDown("slow");
});
});
});
今回はonclickとか使わずに極限までJavaScriptだけでアクションを実現しようとしたけどやっぱ無理だった。諦めて途中でHTMLの構造をいじってしまった(idを指定した)。もっと勉強しないといけないなー。