首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在redactor.js中为脚注插件使用jQuery递增数字

如何在redactor.js中为脚注插件使用jQuery递增数字
EN

Stack Overflow用户
提问于 2012-08-02 04:31:39
回答 1查看 431关注 0票数 1

我正在为redactor.js开发一个插件,允许用户添加脚注。最终,脚注将被写到数据库中的一个单独的表中,但目前这只是一个样机-它是一个更大的大学项目的一部分,它只需要在这个阶段看起来像是在工作。顺便说一句,我是一个JS初学者。

我在编辑器中添加了一个自定义按钮,它使用回调来运行函数。如您所见,每次按下按钮时,fnCount变量都会重置为0。我不知道如何取最后一个值并递增它。我在这里看到了一些类似的问题,但没有一个是完全相同的,因为我是使用redactor API来完成此操作的。

下面是我的代码:

代码语言:javascript
复制
// Insert footnote plugin

insertFootnote = function(){
    var fnCount = 0
    var fnAnchor = '<a href="#fn-' + ++fnCount + '"><sup>' + fnCount + '</sup></a>&nbsp'
    $('.edit').execCommand('inserthtml', fnAnchor);
}


// Initialise editor

$(document).ready(
    function()
    {       
        $('.edit').redactor({
            focus: true, 
            buttonsAdd: ['|', 'footnote', 'reference'], 
            buttonsCustom: {
                footnote: {
                    title: 'Insert footnote', 
                    callback: insertFootnote 
                },

            }
        });
    }
);

我在这里贴了一个例子:http://fclty.org/redactor/,黑色的按钮是一个添加了无用脚注的按钮。白色按钮是一个无关但同样无用的功能,因此可以忽略它。

我意识到我现在所做的就是插入一个无处可去的锚,只能一步一步来,对吧?;-)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-02 05:27:26

如果我没理解错的话,你只需要把变量移到外部作用域:

代码语言:javascript
复制
var fnCount = 0

insertFootnote = function(){    
    var fnAnchor = '<a href="#fn-' + ++fnCount + '"><sup>' + fnCount + '</sup></a>&nbsp'
    $('.edit').execCommand('inserthtml', fnAnchor);
}

现在,变量不是在每次调用时都设置为0,而是在最初设置为0,然后在每次调用时递增。

如果应该将值绑定到调用它的元素,则可以使用data存储它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11767115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档