diff options
| author | Michael Save <savetheinternet@tinyboard.org> | 2012-04-30 02:59:11 +1000 |
|---|---|---|
| committer | Michael Save <savetheinternet@tinyboard.org> | 2012-04-30 02:59:11 +1000 |
| commit | 3d00a7bdecae8d2ef377fb52c5ee8063e28a1484 (patch) | |
| tree | f3f956f7435192ab43b4c1db88b8a1d794d85811 /js/show-backlinks.js | |
| parent | 760023fd32be74608e93d8de0d5269a121e1956d (diff) | |
js/post-hover.js and js/show-backlinks.js to work together
Diffstat (limited to 'js/show-backlinks.js')
| -rw-r--r-- | js/show-backlinks.js | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/js/show-backlinks.js b/js/show-backlinks.js index c3659d09..ecf20482 100644 --- a/js/show-backlinks.js +++ b/js/show-backlinks.js @@ -7,32 +7,44 @@ * * Usage: * $config['additional_javascript'][] = 'js/jquery.min.js'; + * // $config['additional_javascript'][] = 'js/post-hover'; (optional; must come first) * $config['additional_javascript'][] = 'js/show-backlinks.js'; * */ -$(document).ready(function(){ - $('div.post.reply').each(function() { +onready(function(){ + var showBackLinks = function() { var reply_id = $(this).attr('id').replace(/^reply_/, ''); $(this).find('p.body a:not([rel="nofollow"])').each(function() { - var id, post, mentioned; + var id, post, $mentioned; if(id = $(this).text().match(/^>>(\d+)$/)) id = id[1]; else return; - post = $('#reply_' + id); - if(post.length == 0) + $post = $('#reply_' + id); + if($post.length == 0) return; - mentioned = post.find('p.intro span.mentioned'); - if(mentioned.length == 0) - mentioned = $('<span class="mentioned"></span>').appendTo(post.find('p.intro')); - - mentioned.append('<a onclick="highlightReply(\'' + reply_id + '\');" href="#' + reply_id + '">>>' + reply_id + '</a>'); + $mentioned = $post.find('p.intro span.mentioned'); + if($mentioned.length == 0) + $mentioned = $('<span class="mentioned"></span>').appendTo($post.find('p.intro')); + + if ($mentioned.find('a.mentioned-' + reply_id).length != 0) + return; + + var $link = $('<a class="mentioned-' + reply_id + '" onclick="highlightReply(\'' + reply_id + '\');" href="#' + reply_id + '">>>' + + reply_id + '</a>'); + $link.appendTo($mentioned) + + if (window.init_hover) { + $link.each(init_hover); + } }); - }); + }; + + $('div.post.reply').each(showBackLinks); }); |
