В этом примере статьи описывается, как JS реализует классную функцию добавления адреса электронной почты. Поделитесь этим для вашей ссылки. Конкретный метод реализации следующим образом:
Скопируйте код следующим образом: <html>
<голова>
<title> JS реализует крутой функция добавления адреса электронной почты </title>
<стиль типа = "text/css">
ul {list-style: нет; поля: 0; Надо: 0;}
li {маржа: 0; Надо: 0;}
#Content {ширина: 100%;}
#sendmail {float: Left; Ширина: 60%;}
#friendlist {float: Left; Ширина: 30%;}
#bxaddrfly {position: Absolute; высота: 18px; Ширина: 46px; фон: #EEE; Граница: 1PX #CCC SOLID; дисплей: нет;}
#tbaddrtree {width: 126px; Плавание: осталось; Заполнение: 5px; граница: 1px #7f9db9 твердое вещество;}
#tbaddrtree li {ширина: 100%; float: слева;}
#tbaddrtree a {backgroud: #fff; ширина: 100%; цвет: #494949; текстовое-нет; нет;
#TBADDRTREE A: HOVER {founale: #e5edf6;}
</style>
<script type = "text/javascript">
var ev = {};
var flydiv = "bxaddrfly";
var inceptDiv = "sendAddress";
var addEvent = "addAddress ()";
Функция OO (OBJ) {return (document.getElementById)? Document.getElementById (obj): document.all [obj];}
Функция isnone (str) {return str == null || str == ""? True: false}
var browser = new Object ();
Browser.isfirefox = (navigator.useragent.tolowercase (). Indexof ("firefox")! =-1);
if (browser.isfirefox) {extendeventObject ();}
function extendEventObject () {
window.constructor.prototype .__ definegetter __ ("event", function () {
var o = arguments.callee.caller;
var e;
while (o! = null) {
e = o.arguments [0];
if (e && (e.constructor == Event || e.constructor == mouseevent)) return e;
o = o.caller;
}
вернуть ноль;
});
Event.prototype .__ Definegetter __ ("Srcelement", function () {
var node = this.target;
while (node.nodeType! = 1) node = node.parentNode;
вернуть узел;
});
}
window.onload = function () {
var addrtree = oo ('tbaddrtree');
addrtree.onmouseover = function () {addrtree_event (event)};
addrtree.onmouseout = function () {addrtree_event (event)};
addrtree.onclick = function () {addrtree_event (event)};
}
функция addrtree_event (e) {
var memberid, tr
var ee = e.srcelement;
if (ee.tagname == "a" && e.type == "mouseover") {ee.style.textdecoration = "underline"}
if (ee.tagname == "a" && e.type == "mouseout") {ee.style.textdecoration = ""}
if (e.type == "click" && e.srcelement.tagname == "a") {
var li = ee.parentnode.parentnode;
ev.addinfo = "/" "+li.getattribute (" membername ")+"/"</" "+li.getattribute (" email ")+"/">"
oo (flydiv) .innerhtml = li.getattribute ("memberName");
addrtree_add (e.clientx, e.clienty)
}
}
функция addrtree_add (ex, ey) {
if (oo (flydiv) .style.display == 'none' || oo (flydiv) .style.display == '') {oo (flydiv) .style.display = 'block';}
var incepte = oo (inceptDiv);
var inceptex = encepte.offsettop;
var inceptey = incepte.offsetleft;
while (encepte = encepte.offsetparent) {
inceptex += incepte.offsettop;
inceptey += incepte.offsetleft;
}
ev.flyarr = new Array (Ex, EY, Inceptex, Inceptey, 10);
Fly (Flydiv, addevent);
}
Функция Fly (Flyobj, Flyrun) {
var obj, a = ev.flyarr, x, y
if (flyobj! = null) {
if (ev.flyobj! = null) {
window.cleartimeout (ev.flytm);
ev.flyobj.style.top = -900;
}
a [5] = 0;
ev.flyobj = oo (flyobj);
ev.flyrun = flyrun;
}
obj = ev.flyobj;
if (a [4] == null) {a [4] = 1}
a [5]+= a [4] /math.sqrt (math.pow (a [2] -a [0], 2)+math.pow (a [3] -a [1], 2));
if (a [5]> 1) {
obj.style.top = -900;
Eval (ev.flyrun);
ev.flyobj = null;
возвращаться;
}
window.cleartimeout (ev.flytm);
x = (a [2] -a [0])*a [5]+a [0];
y = (a [3] -a [1])*a [5]+a [1];
obj.style.left = x;
obj.style.top = y;
document.body.style.overflowx = "hidden";
ev.flytm = window.settimeout ("fly ()", 10)
}
функция addAddress ()
{
var key = ev.addinfo;
if (oo (ineptdiv) .value.indexof (key) ==-1)
{
oo (inceptDiv). Value+= key+",";
}
}
</script>
</head>
<тело>
<div id = "content">
<div id = "sendmail">
<input name = "textfield" type = "text" id = "sendddress" size = "70">
</div>
<div id = "friendlist">
<div id = "tbaddrtree">
<ul>
<li MemberName = "Zhang San" Email = "[email protected]"> <bobr> <a> Zhang San </a> </nobr> </li>
<li membername = "li si" email = "[email protected]"> <bobr> <a> li si </a> </nobr> </li>
<li membername = "wangwu" email = "[email protected]"> <bobr> <a> wangwu </a> </nobr> </li>
</ul>
</div>
<div id = "bxaddrfly"> </div>
</div>
</div>
<br />
</body>
</html>
Я надеюсь, что эта статья будет полезна для каждого программирования JavaScript.