HTML代码 代码如下:<input type="text" onkeydown="keyNumAll(event);" > Javascript 代码 代码如下:function keyNumAll(evt){ //兼容IE和Firefox获得keyBoardEvent对象 evt = (evt) ? evt : ((window.event) ? window.event : ""); var key = evt.keyCode?evt.keyCode:evt.which;//兼容IE和Firefox获得keyBoardEvent对象的键值 console.info(key);//显示按键键值 } }
直接上代码 代码如下:var kingwolfofsky = { /** * 获取输入光标在页面中的坐标 * @param {HTMLElement} 输入框元素 * @return {Object} 返回left和top,bottom */ getInputPositon: function (elem) { if (document.selection) { //IE Support elem.focus(); var Sel = document.selection.createRange(); return { left: Sel.boundingLeft, top: Sel.boundingTop, bottom: Sel.boundingTop + Sel.boundingHeight }; } else { var...
// JQuery为textarea添加maxlength // textarea默认不支持maxlength属性。 // 通过JQuery的keyup事件: JQuery代码如下: 代码如下:<script type="text/javascript"> $(function(){ //IE也能用textarea $("textarea[maxlength]").keyup(function(){ var area=$(this); var max=parseInt(area.attr("maxlength"),10); //获取maxlength的值 if(max>0){ if(area.val().length>max){ //textarea的文本长度大于maxlength area.val(area...
html里的marqueen也能实现内容的滚动,但滚动是间断的,在滚动一个周期中,会有一段空白出现。如果滚动的区域比较大,空间的出现,会让页面看起来很不美观。运用JavaScript可以使这一问题得到改观,实现无间断的滚动。 上下循环滚动代码: 代码如下:<div id="demo" onmouseover="clearInterval(inter)" onmouseout="inter=setInterval(qswhMarquee,30)" style="overflow:hidden; height:60px"> <div id="demo1"> 111111111111111<...
怎么说呢,刚包完夜吧,应该很累了,但现在仍有力气敲打着这些字符,看来我还没有到此为止啊。 废话少说,最近写了个在线的编辑器,类似ewebeditor那样的,当然没有人家那么强大,但是基本功能都有,而且还是兼容ie和ff的,为此我也花了不少功夫,还是赶紧把代码祭出来吧 demo.html: 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htm...
好的程序往往是兼容多种浏览器的。 看下例: 一个简单的button,我们可以通过点击下面的button直接通过event对象得到当前的button元素,兼容多浏览器.当然,其他元素事件的写法同。 <input type="button" id="btn" name="btn" value="button1" onclick="getEvent(event)"/>
首先创建html页面为sort.html ,并把下面的内容复制进去 代码如下:<!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"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <style type="text/css"> .desc span{ display:none;} .asc em{ display:...
在编写处理xml的网页时,经常为浏览器兼容性头疼。于是我将常用的xml操作封装为函数。经过一段时间的改进,现在已经很稳定了,用起来很舒服。 函数有—— xml_loadFile:xml同步/异步加载。 xml_transformNode:xsl转换。 xml_text:节点的文本。 selectSingleNode:根据XPath选择单个节点。 selectNodes:根据XPath选择多个节点。 全部代码(zyllibjs_xml.js)—— 代码如下:/* zyllibjs_xml XML处理 @author zyl910 注意...
代码如下:<script type="text/javascript"> function getIframeContent(){ //获取iframe中文档内容 var doc; if (document.all){//IE doc = document.frames["MyIFrame"].document; }else{//Firefox doc = document.getElementById("MyIFrame").contentDocument; } return doc.body.innerHTML; } </script>
原网页中用的是innerText,脚本之家这里给替换成了innerHTML是为了简单的支持firefox,因为firefox不支持innerText,但已经有办法让firefox支持innerText了,兼容代码如下。 代码如下://让Mozilla支持innerText try{ HTMLElement.prototype.__defineGetter__ ( "innerText", function () { var anyString = ""; var childS = this.childNodes; for(var i=0; i<childS.length; i++) { if(childS[i].nodeType==1) anyString += child...
今天在做一个博客转发的功能,就像新浪微薄转播的那个功能一样,有一个textArea,就是我们发微薄的那个框,别人的微薄都有一个转发的按钮,当我们点击这个转发按钮的时候,他的微薄就会进入到textArea中,看起来很简单的文本框赋值,其实难点就在于,这时候的光标是定位在最前面的。于是搜索了baidu,google,找到了 IE下面的方法 代码如下:var tea=document.getElementById("文本框的ID"); var txt=textArea.createTextRange(); txt...
注意:在firefox下 添加字符串的时候有个bug 就是scrollTop 会等于0,当然解决了,但是不够完美。如果有高手也研究过,麻烦指点下。 完整测试代码: 代码如下:<textarea id="testlujun" style="width: 300px; height: 50px;">abcdefghijklmnopqrstuvwxyz</textarea><br /><input onclick="alert(TT.getCursorPosition(test))" type="button" value="光标位置" /><input onclick="TT.setCursorPosition(test,3)" type="button" valu...
代码如下:<script type="text/javascript"> function reinitIframe(){ var iframe = document.getElementById("mainFrame"); try{ var bHeight = iframe.contentWindow.document.body.scrollHeight; var dHeight = iframe.contentWindow.document.documentElement.scrollHeight; var height = Math.max(bHeight, dHeight); iframe.height = height; }catch (ex){} } window.setInterval("reinitIframe()", 200); </script>
document.getElementsByName(name)方法正是用来读取对象数组的。用法如下: var elements = document.getElementsByName("role"); ("role"为CheckBox数组中每个CheckBox共同的名字) for: getElementsByName范例 function test(){ // 得到checkbox数组 var elements = document.getElementsByName("role"); var str = ""; // 取得所选择的角色 for(var i=0;i " + elements[i].value + "\n"; } } // 输出 if(str == ""){...
代码如下:<textarea onkeydown="keyHanlder(event)"> </textarea> <script> function keyHanlder(e){ if(e.ctrlKey&&e.keyCode==13){ alert("Ctrl+Enter"); if(e.preventDefault)e.preventDefault(); else e.returnValue=false; } } </script> 非IE浏览器调用函数会自动返回参数event,通过它可以获取键盘 代码如下:<SCRIPT LANGUAGE="JavaScript"> <!-- function hotkey(e) { //判断浏览器 var ex = navigator.appName; var a =...