PDA

View Full Version : جاوا اسکریپت و ContentEditable div



arslan tegin ghazi
دوشنبه 17 مرداد 1390, 12:32 عصر
این کد منه :



<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Content-Editor</title>
<style>
<!--
.edit {
border:inherit;
size:inherit;
height:250;
width:600;
overflow-y: auto;
background-color:#FFF;
}
-->
</style>
<script type="text/javascript">
var i=0;
function add()
{
insertTextAtCursor(i);
i++;
}
function setcolor()
{
document.execCommand("ForeColor", false, "#FF0000");
}
function insertTextAtCursor(text) {
var sel, range, html;
if (window.getSelection) {
sel = window.getSelection();
if (sel.getRangeAt && sel.rangeCount) {
range = sel.getRangeAt(0);
range.insertNode( document.createTextNode(text) );

}
} else if (document.selection && document.selection.createRange) {
range = document.selection.createRange();
range.pasteHTML(text);
}
}
function selec()
{
var txtSelection = document.selection;
var tRange = txtSelection.createRange();
var insertionText = " yes " ;
if(txtSelection == null)
{
alert("selection is nothing");
}
if(tRange != null)
{
tRange.text = insertionText;
}
}
</script>
</head>

<body bgcolor="#006699">
<center>
<div align="left" class="edit" ContentEditable>
Select
</div>
</center>
<input type="button" value="color" onClick="setcolor()"/>
<input type="button" value="insert" onClick='add();'/>
<input type="button" value="Selection" onClick='selec();'/>
</body>
</html>


چرا add(); در IE و selec(); در کروم اجرا نمی شوند ؟

در ضمن اگر کسی کدی بلد بود که با کلیک روی دکمه متن انتخاب شده با متن مورد نظر ما تعویض بشود ( غیر از اینی که نوشته ام ) لطفا به اشتراک بگذارد .

کلا یک مرجعی در این مورد کارها می شناسید معرفی کنید .