1

我正在使用简单的代码创建简单的 jquery 插件以使文本变为粗体:

(function($) {
    $.fn.green = function(options) {
        return this.each(function() {
            var $this = $(this);
            var markup = $this.html();
            markup = $.fn.green.format(markup);
            $this.html(markup);
        });
    };
    $.fn.green.format = function(txt) {
        return "<strong>" + txt + "<strong>";
    };
}(jQuery));

输出是:

<div>
    <strong>this is quotation<strong>
    </strong></strong>
</div>

这在 div 中添加了一个额外的强标签。
你能告诉我这段代码有什么问题吗?

4

1 回答 1

1

替换您的以下代码:

return "<strong>" + txt + "<strong>";

具有以下内容:

return "<strong>" + txt + "</strong>";

由于您在代码中的强标签未关闭,因此 HTML 正在制作一个额外的强标签来关闭它。

于 2013-09-30T13:56:04.333 回答