如何实现JS仿QQ邮箱收件人选择和搜索
导语:通过下面教程的学习,大家可以掌握如何实现JS仿QQ邮箱收件人选择和搜索,更多详情请关注应届毕业生考试网。
页面截图:
主要html代码:
To:
Subject:
Message:
name="txtsearch" />
ass="Cata food, S.L.">Cata food, S.L.
ass="Anqing Beverage">Anqing Beverage
ass="123456ew">123456ew
主要js实现代码:
$(function(){
//点击收件人列表到收件人
$(".firstmail").bind("click",function(){
var $mailTo=$(this).attr("ass");//收件人名称
var $mailToId=$(this).attr("alt");//收件人Id
var $ptxt_val=$("#ptxt").text();//收件人框中的值
var $messId=$("#messId").val();//隐藏的收件人Id
if($ptxt_val.indexOf($mailTo)<0){//若不存在,则拼接
$("#ptxt").append(""
+$mailTo+";"+"");
$messId=$messId+$mailToId+";";
}
$("#messId").val($messId);
$("#messName").val($("#ptxt").text());//隐藏的`收件人名称
});
//点击某个收件人,添加样式
$(".rece").live("click",function(){
$("#ptxt").find(".rece").removeClass("on");
$("#ptxt").find(".rece").css("background-color","").css("color","")
$(this).addClass("on").css("background-color", "#545f59").css("color","#fff");
});
//点击删除键跟退格键,删除对应的收件人
$(document).bind('keydown',
function(event) {
var $messId=$("#messId").val();//收件人Id的值
var $span_alt=$("#ptxt .on").attr("alt");//选中的收件人
if($span_alt != null){
var $index,$span_size,$mess_size,$val;
$index=$messId.indexOf($span_alt);
$span_size=$span_alt.length;
$mess_size=$messId.length;
//删除对应的收件人Id
$val=$messId.substring(0,$index)
+$messId.substring($index+$span_size,$mess_size);
$("#messId").val($val);
if(46==event.keyCode ){ //Delete键
$("#ptxt .on").remove();
$("#messName").val($("#ptxt").text());
}else if(8==event.keyCode){//退格键
$("#ptxt .on").remove();
$("#messName").val($("#ptxt").text());
return false;
}
}
}
);
//搜索框搜索事件
$(".search_mail").bind("blur",function(){
var content = $(this).val();
if("Search Contact..." != content && content !=""){
$(".mailclist li p").each(function(){
var name = $(this).text();
if(name.indexOf(content) == -1){
$(this).hide();
}else{
$(this).show();
}
});
} else {
$(".mailclist li p").show();
}
});
});