大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 网页设计 -> HTML/CSS -> html编辑器的回车换行问题解决方案

html编辑器的回车换行问题解决方案

时间: 2021-07-31 作者:daque

在html编纂器中,普遍默许按回车老是展示<p> </p>,固然按shift+enter不妨是径直加<br>,而很多人蓄意按回车即是<br>换行而不是分段。 从来有人问我这个题目,而我没有写代码尝试就觉得在onkeydown内里确定event.keycode==13就不妨确定并处置,尔后来创造犹如并没有人能用这种本领处置胜利。对此表白歉意!为此,提防接洽了一下,创造不妨有两种处置本领,然而都不是很完备,然而仍旧基础不妨满意须要了: 1.在初始化编纂器实质的功夫,加上"<div></div>" 如许回车的功夫编纂器会径直天生"<div></div>"而不会天生<p></p>,就不妨不过换行而不换段了,如次所示: <script language="javascript"><!--function initeditor(){ var l_defaulthtml_text="<div></div>"; var sz="" sz+="<body oncontextmenu=\"return false\">"+l_defaulthtml_text+"</body>" ideditbox.document.designmode="on"//编纂形式翻开 ideditbox.document.write(sz) //以次代码不过扶助简单看编纂器源代码的 ideditbox.document.attachevent( "onkeyup"  , readsource ); ideditbox.document.attachevent( "onkeydown"  , readsource );}//看源代码function readsource(){ document.all.source.value=ideditbox.document.body.innerhtml;}//--></script><body onload="initeditor()"><iframe width="500" height="400" id="ideditbox"></iframe><br><input type="button" value="察看源代码" onclick="readsource()"><br><textarea name="source" rows="20" cols="60"></textarea></body> 不及: 这种本领有个bug即是在编纂器中增添少许实质后,全选(ctr+a)而后简略一切实质(如许就把<div></div>也简略了),从新输出实质后回车就仍旧会爆发<p></p> 2.径直在onkeypress内里处置 咱们不妨在onkeypress内里径直出来,但确定event.keycode==13也即是是回车的功夫咱们径直插入<br>标签,如许不管如何样都不会展示题目的了。以次是代码示例: <script language="javascript"><!--function initeditor(){ var sz="" sz+="<body oncontextmenu=\"return false\"></body>" ideditbox.document.designmode="on" ideditbox.document.write(sz) ideditbox.document.onkeypress=fnkeypress}function fnkeypress(){ //提防:即使中心不在编纂器内该因变量就不起效率了; var ev = ideditbox.event; if(ev.keycode==13){  inserthtml("<br><!--  -->"); //不领会是我欣赏器题目仍旧其余题目,只插入<br>标签光标不换行,必需附加点其余标签,不妨结果一道简略之  return false;//如许回车即是即是作废了,不会加上腻烦的<p>标签 }}//在光标场所插入htmlfunction inserthtml(html){var sel = ideditbox.document.selection;if (sel!=null) {    var rng = sel.createrange();    if (rng!=null)        rng.pastehtml(html);}}//察看代码function readsource(){ document.all.source.value=ideditbox.document.body.innerhtml;}//--></script><body onload="initeditor()"><iframe width="500" height="400" id="ideditbox"></iframe><br><input type="button" value="察看源代码" onclick="readsource()" onfocus="ideditbox.focus()"><br><textarea name="source" rows="20" cols="60"></textarea></body> 不及: 1).inserthtml("<br><!--  -->"); 会爆发废物代码“<!--  -->”;  2).要保护中心必需在编纂器中本领相应编纂器的onkeypress事变 因功夫联系,本示例步调并未给出中心不在编纂器中的处置本领 

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.