JS+CSS实现仿新浪微博搜索框的方法

本文实例讲述了JS+CSS实现仿新浪微博搜索框的方法。分享给大家供大家参考。具体实现方法如下:

复制代码 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
 <title>JS+CSS仿类似新浪微博搜索框的效果</title>
 <style type="text/css">
 * { padding:0; margin:0;}
 body { font-size:14px; }
 #box { width:600px; margin:40px auto;}
 #in { width:240px; height:24px; line-height:24px; border:1px solid #369; border-radius:4px; box-shadow:inset 0 0 2px #999; }
 #suggest { display:none; position:relative; margin-top:-1px; width:240px; padding-top:1px; border:1px solid #369; border-top:0 none;
border-radius:4px; box-shadow:inset 0 0 2px #999; overflow:hidden; }
 #suggest a { display:block; color:#f00; height:24px; line-height:24px; text-decoration:none; padding:0 4px;}
 #suggest a:hover { background:#eee;}
 #suggest a span { color#369;}
  </style>
  <script type="text/javascript">
 window.onload=function(){
 //声明一坨变量供下面使用
 var obox=document.getElementById("box");
 obj=document.getElementById("in");
 osug=document.getElementById("suggest");
 oa=osug.getElementsByTagName("span");
//兼容ie和火狐浏览器的方式,但是经测试发现ie678可以ie9却不行在删除的时候无法触发,网上查下说有ie9这个问题
 obj.oninput=obj.onpropertychange=onchange;
 function onchange(){
  var txt=this.value;
  var words=txt.length;
  if(words==0){
   osug.style.display="none";
  }else if(words<=8){
   osug.style.display="block";
   for( var i=0;len=oa.length,i<len;i++){
    oa[i].innerHTML=txt;
   }
  }else if(words>8){
   osug.style.display="block";
   var limit=txt.substring(0,8)+"...";
   for( var i=0;len=oa.length,i<len;i++){
    oa[i].innerHTML=limit;
   }
  }
 }
}
function disbox(){
   document.getElementById("suggest").style.display="none";
  }
</script>
</head>
<body>
 <dl id="box">
  <dt><input onblur="disbox()" type="text" name="" id="in" /></dt>
  <dd id="suggest" >
        <a href=#>         <a href=#>   </dd>
 </dl>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
一、什么是跨域 我们先回顾一下域名地址的组成: http:// www . google : 8080 / script/jquery.js http:// (协议号) www (子域名) google (主域名) 8080 (端口号) script/jquery.js (请求的地址) * 当协议、子域名、主域名、端口号中任意一各不相同时,都算不同的“域”。 * 不同的域之间相互请求资源,就叫“跨域”。 比如: http://www.abc.com/index.html 请求 http://www.def
本文实例讲述了js+HTML5基于过滤器从摄像头中捕获视频的方法。分享给大家供大家参考。具体如下: index.html页面: div class="warning"h2Native web camera streaming (getUserMedia) is not supported in this browser./h2/divdiv class="container" h3Current filter is: None/h3 buttonClick here to change video fil
我遇到的问题是:url里的参数内容包含符合,我有两种方法解决 其一方法是:在页面用JS转码 ,例子如下(前端处理) 复制代码 代码如下: a href=#>script language="javascript" function test(a,b){ alert("test"); location.href=#>} /script 其二方法是:在后端处理 1jsp: 复制代码 代码如下: a href=#> 2java bean: group 复制代码 代码如下: String cn;//要显示的CN S
复制代码 代码如下: /*7536-7646*/ animate: function( prop, speed, easing, callback ) { if ( jQuery.isEmptyObject( prop ) ) { return this.each( optall.complete ); } //#7864行this.options.complete.call( this.elem )使得其可以不断的连续执行动画,比如$(‘selector').animate({prop1},speed1
废话不多说,直接奉上代码 JS script type="text/javascript"function Sum(arg1,arg2){ //数值加法函数var sarg1 = new String(arg1); //将传入的参数转为字符串以便进行参数检查var sarg2 = new String(arg2); //将参数2转为字符类型if( (sarg1=="")||(sarg2=="") ) //确保参数不为空{var e0 = new Error(); //当有参数为空则抛出异常e0.Seria
本文实例讲述了基于jQuery实现的旋转彩圈。分享给大家供大家参考。具体实现方法如下: !DOCTYPE htmlhtmlheadscript src="jquery-1.7.1.min.js"/scriptscriptfor(var i=0;i100000;i++){if(i%4==0)setTimeout("$('#div1').css({'border-left':'40px solid red','border-bottom':'40px solid green','border-right':'
当今 JavaScript 大行其道,各种应用对其依赖日深。web 程序员已逐渐习惯使用各种优秀的 JavaScript 框架快速开发 Web 应用,从而忽略了对原生 JavaScript 的学习和深入理解。所以,经常出现的情况是,很多做了多年 JS 开发的程序员对闭包、函数式编程、原型总是说不清道不明,即使使用了框架,其代码组织也非常糟糕。这都是对原生 JavaScript 语言特性理解不够的表现。要掌握好 JavaScript,首先一点是必须摒弃一些其他高级语言如 Java、C# 等类式面向对象思维的
具体如何屏蔽更多的快捷键可以自行google搜索。 这里要说的是如何屏蔽后去执行自定义的事件。 这里为了方便使用的Kibo做例子,使用google搜索出来的结果一般都是javascript原生实现,很简单的,这里不做介绍。 这里是实现了在一个textarea中enter进行保存的例子,屏蔽掉了原来的回车事件。 代码如下: 复制代码 代码如下: //键盘监听 var areaKey = new Kibo($("#aac010")[0]); areaKey.down('enter',doSave); funct
在这之前我们比较值使用两等号 “==” 或 三等号“===”, 三等号更加严格,只要比较两方类型不同立即返回false。 另外,有且只有一个值不和自己相等,它是NaN 现在ES6又加了一个Object.is,让比较运算的江湖更加混乱。多数情况下Object.is等价于“===”,如下 1 === 1 // trueObject.is(1, 1) // true 'a' === 'a' // trueObject.is('a', 'a') // true true === true // trueObjec
复制代码 代码如下: ?php /* ?xml version="1.0" encoding="utf-8"? article item title name="t1"/title contentcontent1/content pubdate2009-10-11/pubdate /item item title name="t2"title2/title contentcontent2/content pubdate2009-11-11/pubdate /item /article */ /* 使用DO