求高手帮忙改一下html格式化的js文件

mingfish 2009-12-26 10:04:44
原js地址:http://tool.114la.com/js/HTML-Beautify.js
测试dome:http://tool.114la.com/jsformat.html

该js转换后的内联标签(如 a span button)换行了,如果代码太长就显得很浪费空间,请高手帮忙看看怎样把内联标签改为不换行。



...全文
121 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mylove_web 2009-12-27
  • 打赏
  • 举报
回复
上不去
梅雪香 2009-12-27
  • 打赏
  • 举报
回复
简单调了一下,没那么好处理,想合心意恐怕只有自己写了。


	var regInline = /^\s*<\/?(?:a|span|strong|b|u|i|label|legend|font|option|img|em|button|script|title|meta|link)\b/,isInline=false;

while (true) {
var t = multi_parser.get_token();
multi_parser.token_text = t[0];
multi_parser.token_type = t[1];
if (multi_parser.token_type === 'TK_EOF') {
break;
}
switch (multi_parser.token_type) {
case 'TK_TAG_START':
case 'TK_TAG_SCRIPT':
case 'TK_TAG_STYLE':
isInline = regInline.test(multi_parser.token_text);
// if(!isInline){
multi_parser.print_newline(false, multi_parser.output);
// }
multi_parser.print_token(multi_parser.token_text);
if(!isInline){
multi_parser.indent();
}
multi_parser.current_mode = 'CONTENT';
break;
case 'TK_TAG_END':
isInline = regInline.test(multi_parser.token_text);
if(!isInline){
multi_parser.print_newline(true, multi_parser.output);
}
multi_parser.print_token(multi_parser.token_text);
multi_parser.current_mode = 'CONTENT';
break;
case 'TK_TAG_SINGLE':
multi_parser.print_newline(false, multi_parser.output);
multi_parser.print_token(multi_parser.token_text);
multi_parser.current_mode = 'CONTENT';
break;
case 'TK_CONTENT':
if (multi_parser.token_text !== '') {
//isInline = regInline.test(multi_parser.token_text);
if(!isInline){
multi_parser.print_newline(false, multi_parser.output);
}
multi_parser.print_token(multi_parser.token_text);
}
multi_parser.current_mode = 'TAG';
break;
}
multi_parser.last_token = multi_parser.token_type;
multi_parser.last_text = multi_parser.token_text;
}
mingfish 2009-12-27
  • 打赏
  • 举报
回复
怎么接上原来的js啊,用不了

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧