// ==UserScript==
// @name Click more for toggle
// @namespace gotgit
// @description Add a toogle effect at the location where anchor with a click-more css.
// @include http://www.ossxp.com/doc/gotgit/demo*
// @include http://gotgit.github.com/gotgit/demo*
// @require http://code.jquery.com/jquery-1.6.2.min.js
// ==/UserScript==
// Copyright 2011, Jiang Xin
$(function(){
$('.click-more').each(function(i) {
contentNode = this.parentNode.nextSibling;
if (contentNode instanceof Text) {
contentNode = contentNode.nextSibling;
}
contentNode.parentNode.removeChild(contentNode);
divNode = $('
').hide();
divNode.append(contentNode);
button = $('
更多...
');
button.addClass('click-more-button');
$(this.parentNode).append(button);
$(this.parentNode).append(divNode);
})
$('.click-more').parent().each(function(i) {
$('.click-more-button', this).bind('click', function() {
divNode = $('div.click-more-contents', this.parentNode);
divNode.toggle();
button = $('.click-more-button', this.parentNode)
if (divNode.is(':visible')) {
button.removeClass('click-more-button-closed');
button.addClass('click-more-button-opened');
button[0].textContent = '收起...';
} else {
button.removeClass('click-more-button-opened');
button.addClass('click-more-button-closed');
button[0].textContent = '更多...';
}
})
});
})