fix autoclosing of p tag

This commit is contained in:
nightwing 2014-08-02 01:02:52 +04:00
commit b69f7450aa

View file

@ -39,8 +39,12 @@ var TokenIterator = require("../../token_iterator").TokenIterator;
var FoldMode = exports.FoldMode = function(voidElements, optionalEndTags) { var FoldMode = exports.FoldMode = function(voidElements, optionalEndTags) {
BaseFoldMode.call(this); BaseFoldMode.call(this);
// TODO folding support for optional end tags this.voidElements = voidElements || {};
this.voidElements = oop.mixin(voidElements || {}, optionalEndTags || {}); this.optionalEndTags = {};
oop.mixin({}, this.voidElements);
if (optionalEndTags)
oop.mixin(this.optionalEndTags, optionalEndTags);
}; };
oop.inherits(FoldMode, BaseFoldMode); oop.inherits(FoldMode, BaseFoldMode);
@ -189,10 +193,10 @@ function is(token, type) {
if (!tag || top.tagName == tag.tagName) { if (!tag || top.tagName == tag.tagName) {
return stack.pop(); return stack.pop();
} }
else if (this.voidElements.hasOwnProperty(tag.tagName)) { else if (this.optionalEndTags.hasOwnProperty(tag.tagName)) {
return; return;
} }
else if (this.voidElements.hasOwnProperty(top.tagName)) { else if (this.optionalEndTags.hasOwnProperty(top.tagName)) {
stack.pop(); stack.pop();
continue; continue;
} else { } else {