如何在编辑器里面创建一个超链接

wcy1978 2010-01-21 09:26:00
我想着在web编辑器里面插入个

固定的超链接

例如:点击按钮在编辑器里面直接插入 文本是:AAA 它的链接地址:XXXX.com

我知道 document.execCommand('CreateLink',true,'true');//弹出一个对话框输入URL

document.execCommand('CreateLink',false,‘XXXX.com’) //需要选择文本

我不想弹出对话框或者用鼠标选择文本那种形式

我就想直接插入请高手指教!!!!!!!!!!!!


...全文
71 2 打赏 收藏 举报
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wcy1978 2010-01-21
  • 打赏
  • 举报
回复
我可能没有说明白

我是这么理解的可能要分3部分

第一:插入显示的文本

第二:把插入的文本选中

第三:让选中的文本 'CreateLink' 地址:xxx.com
jol_boy 2010-01-21
  • 打赏
  • 举报
回复
框选改变文字链接

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<head>
<script>
var ed = null;
var lightbox =popoup= null;
var lianjie =rang= null;
window.onload = function() {
var o = document.getElementById("ss");
ed = document.all?o.contentWindow.document:o.contentDocument;
ed.open();
ed.write(' <html> <head> <style>html,body{margin:5px;font:14px;word-wrap:break-word} </style> </head> <body id="my_body"> </body> </html>');
ed.close();
ed.contentEditable = true;
ed.designMode = 'on';
//////////////////////////////////////////////////////
lightbox = document.getElementById('lb');
lightbox.style.width = Math.max(document.documentElement.scrollWidth, document.documentElement.clientWidth) + "px";
lightbox.style.height = Math.max(document.documentElement.scrollHeight, document.documentElement.clientHeight) + "px"
lightbox.style.display = "none";
/////////////////////////////////////////////////////
popoup = document.getElementById('popoup');
popoup.style.left = (document.documentElement.scrollWidth - popoup.offsetWidth)/2+"px";
popoup.style.top = (document.documentElement.scrollHeight - popoup.offsetHeight)/2+"px";
popoup.style.display = "none";
};

function ss(){
if(document.all)rang=ed.selection.createRange();
popoup.style.display =lightbox.style.display = "";
document.getElementById('ll').value="";
}

function linka(){
lianjie = document.getElementById('ll').value;
popoup.style.display =lightbox.style.display = "none";

if(document.all){rang.execCommand("CreateLink",false,lianjie)}
else
ed.execCommand("CreateLink",false,lianjie);

//rang.parentElement().setAttribute("target","_blank");
//rang.parentElement().outerHTML=rang.parentElement().outerHTML.replace("<A","<A target=\"_blank\"");

}
</script>
</head>
<BODY>
<div id='lb' style="filter:alpha(opacity=50);Opacity:0.5; background-color:#CCCCCC; position:absolute; left:0px; top:0px;"> </div>
<div id='popoup' style="border:1px solid #666666 ; padding:50px; position:absolute; background-color:#FFFFFF">
输入连接: <input id='ll' style=" width:250px;" type="text" /> <br>
<input value="确定" type="button" onclick="linka()" />
</div>
<IFRAME id="ss" height="200" src="about:blank" width="200" > </IFRAME>
<br> <br> <input value='link' type="button" onclick="ss()" />
<input value='innerHTML' type="button" onclick="alert(ed.body.innerHTML)" >
</BODY> </HTML>
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-01-21 09:26
社区公告
暂无公告