您好,匿名用户
随意问技术百科期待您的加入

TypechoComment()未自动加载

0 投票

使用的Typecho是SVN上下载的,默认的主题也木有加载,这个不是Typecho自动加载的么,不知道什么情况了。导致现在点回复就要刷新一下网页0_0,这太不科学了!问题网站:http://imnerd.org

用户头像 提问 2014年 1月24日 @ Gemini 上等兵 (319 威望)
分享到:

1个回答

0 投票
 
最佳答案

最后是自己将TypechoComment()函数的function提取出来稍作修改最后外部载入解决。下面是我的TypechoComment()函数的function,比较关键的是15行获取response的那部分,需要稍作修改就是。

//<![CDATA[
var TypechoComment = {
    dom : function (id) {
        return document.getElementById(id);
    },
    
    create : function (tag, attr) {
        var el = document.createElement(tag);
        
        for (var key in attr) {
            el.setAttribute(key, attr[key]);
        }
        
        return el;
    },

    reply : function (cid, coid) {
        var comment = this.dom(cid), parent = comment.parentNode,
            response = this.dom(document.getElementById(cid).getElementsByClassName('reply')[0].getElementsByTagName('a')[0].href.split('#')[1]), input = this.dom('comment-parent'),
            form = 'form' == response.tagName ? response : response.getElementsByTagName('form')[0],
            textarea = response.getElementsByTagName('textarea')[0];

        if (null == input) {
            input = this.create('input', {
                'type' : 'hidden',
                'name' : 'parent',
                'id'   : 'comment-parent'
            });

            form.appendChild(input);
        }
        
        input.setAttribute('value', coid);

        if (null == this.dom('comment-form-place-holder')) {
            var holder = this.create('div', {
                'id' : 'comment-form-place-holder'
            });
            
            response.parentNode.insertBefore(holder, response);
        }

        comment.appendChild(response);
        this.dom('cancel-comment-reply-link').style.display = '';
        
        if (null != textarea && 'text' == textarea.name) {
            textarea.focus();
        }
        
        return false;
    },

    cancelReply : function () {
        var response = this.dom('respond-post-183'),
        holder = this.dom('comment-form-place-holder'), input = this.dom('comment-parent');

        if (null != input) {
            input.parentNode.removeChild(input);
        }

        if (null == holder) {
            return true;
        }

        this.dom('cancel-comment-reply-link').style.display = 'none';
        holder.parentNode.insertBefore(response, holder);
        return false;
    }
}
//]]>
用户头像 回复 2014年 1月27日 @ Yorick 上等兵 (278 威望)
选中 2013年 9月7日 @Gemini
提一个问题:

相关问题

0 投票
1 回复 31 阅读
用户头像 提问 2013年 11月16日 @ Nunu 上等兵 (350 威望)
0 投票
1 回复 33 阅读
0 投票
1 回复 32 阅读
用户头像 提问 2013年 12月15日 @ hadoop 上等兵 (109 威望)
0 投票
1 回复 29 阅读
用户头像 提问 2012年 12月1日 @ Scorpio 上等兵 (220 威望)
0 投票
1 回复 52 阅读
用户头像 提问 2012年 12月1日 @ Trish 上等兵 (154 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...