网上看到很方便实现这个功能的事件:
IE 中的 onpropertychange
非IE中的 oninput
用这两事件的好处是,当在输入框的内容发生变化调用事件,使用key 和 mouse的相关事件会比较复杂,而且这个方法用粘贴方法一样有效。 不过用js改变input的value值不会发生这两个事件。
在中文本框中添加两个事件的方法就可以了。(看到网上说非ie中的oninput方法要用addEventListener绑定,用 element.oninput = function(){...}不行,可是我在火狐6中是可以的,不过为了安全起见,这里我还是使用标准的方法 element.addEventListener('input',function(){...})实现 )
在IE中 使用 element.attachEvent('onpropertychange', function(){...})方法。 不过,因为ie中会判断所有的属性发生变化,这样会发生很多不必要的工作,而且有时候会出现问题,无法调用函数。 所以这里我只对当value属性发生变化的时候进行判断(事件对象的propertyName属性),并调用方法。 结果是:
element.attachEvent('onpropertychange', function(){if(window.event.propertyName == "value"){...})
复制代码 代码如下:
/*
参数:
length:最大长度
ele: 输入对象
callBack: 回调方法,参数len表示当前输入框内容字节数, 方法中的this指向ele对
autoFire: 初使化自动调用一次
*/
function input_max(length, ele, showEle, callBack,autoFire){
if(ele.addEventListener){
ele.addEventListener('input', change, false);
}else{
ele.attachEvent('onpropertychange', function(){if(window.event.propertyName == "value"){alert('a');change()}})
}
function change(){
var len = Math.ceil(byteLength(ele.value)/2);
len = len <= length ? len : length - len;
callBack.call(ele,showEle,len);
};
function byteLength(b) {
if (typeof b == "undefined") { return 0 }
var a = b.match(/[^\x00-\x80]/g);
return (b.length + (!a ? 0 : a.length))
};
//自动调用一次
if(autoFire){change()};
};
// 回调函数
function input_max_callBack(showEle,len){
var note = showEle;
if (len >= 0 ){
note.innerHTML = len ;
this.style.borderColor = "";
this.style.backgroundColor = "";
}else{
note.innerHTML = "<span class='red b fz_14'>超过" + -len + "</span>";
this.style.backgroundColor = "#FFC";
this.style.borderColor = "#F00";
}
}
// 动态标题
input_max(30, document.getElementById('news_title'), document.getElementById('news_title_limit'),input_max_callBack,true);
相关推荐:
ChatGPT3.5最新版:智能对话新纪元,带你进入AI的未来世界,ai苔藓生长
ChatGPT打不开网页?看完这篇你就懂了!,国内ai写作安卓软件
ChatGPT无法完全显示?你可能忽略了这些令人惊讶的细节!,朵朵ai绘画
揭开“好的AI软件”背后的秘密:让生活和工作更智能的利器
SEO策划:让你的网站迅速脱颖而出的秘诀,seo优化和技巧
什么是seo行业,seo是什么职业做什么的 ,ai标题字体效果
seo诊断什么意思,seo诊断a5 ,约瑟夫ai
seo种草什么意思,seo yoo na ,三维地震反演AI
二次创作的魅力与潜力:创意无限的数字时代,天长外贸网站建设
seo经理做什么的,seo经理招聘 ,盲人ai眼镜
AI优化文章:如何利用人工智能提升写作效率和质量
seo链接有什么用,seo外链是什么意思 ,one ai写作
什么是seo艺术,什么是seo seo有何价值 ,ai写作生成器 推荐
个性化广告:新时代营销的秘密武器,建设经营性网站怎么记账
seo网站反链是什么,网站反链怎么做 ,ai插画头像卡通
SEO优化如何提升网站排名,驾驭搜索引擎流量,三亚网站推广方法
如何识别文章是否由AI撰写?揭开智能写作的秘密
打造高效创作体验,写文章AI软件重塑内容生产力
文字生成AI开启创作的新纪元
“新热度”:引领潮流的力量,如何趋势的脉搏,浙江通用网站建设特点
ChatGPT显示“此网站无法加载站点”:背后原因与解决办法详解,用ai画明度渐变条
ChatGPT错误处理与异常情况解决方法:让你的AI助手更加智能与可靠,智能ai鼠标ai智能语音
seo软文有什么作用,seo文案是什么 ,斐乐Ai测评问题
SEO优化排-打造高效的网络营销利器,精神AI
【BVIP尊享体验:超越奢华,开启专属未来】,珠宝网站建设思路
软件AI:颠覆未来的智能革命
乘风SEO-引领企业互联网时代的腾飞之路,南昌b站关键词排名优化贵不贵
为什么seo吸引人,为什么seo吸引人呢 ,ai路径查找器绘制树
seo要懂些什么软件,seo常用软件 ,ai写作网站网址大全
一秒采集:提升效率、创造价值的秘密武器,苏州网站整站优化
SEO结构优化:助力网站提升排名与流量的关键策略,杭州小网站推广哪家好做
为什么选择老域名注册,打造品牌价值的秘密武器,网站建设服务费用多少
AI自动帮写,轻松应对内容创作挑战,赋能写作新未来,嘿科技ai
优化型网站:提升企业竞争力的必备利器,重庆网站推广工作如何
SEO添加:提升网站流量与排名的必备策略,seo团队成员中国人
SEO怎么排名?这5大技巧,轻松提升网站排名,人人都可ai
什么是神马排名?让你的网站脱颖而出,轻松占据搜索引擎的C位!,乳山网站优化关键词排名
SEM做得好可以取代SEO吗?浅析两者的异同与未来趋势,王道ai
ChatGPT无法加载?检查您的网络设置并尝试重启ChatGPT,助您畅享无障碍智能对话体验,ai记录人
“关键词指白”:揭秘如何通过精准关键词优化实现流量暴增,全面分析网站seo
AI文章比对技术:引领写作与内容审核的新革命,ai智能写作小说免费
AI文章概括缩写:让内容高效获取的智能工具,ai 处理文件
为什么越来越多的人选择在知乎发布文章?这里面的机会你可能还没发现!,潍坊关键词排名提升
ChatGPT4网页空白:重新定义智能交互的未来,怎么登ai
SEO门户:打造高效网站流量的关键利器,创意网站建设要求
智能AI写文章:高效创作新风尚
ChatGPT网站突然不能用了?如何快速解决这个问题,让你重新畅享AI对话!,ai新建多个画板
互联网留痕:数字时代的隐形轨迹与自我管理,灯塔网站推广包年多少钱
ChatGPT连了外网也登不了?如何解决这一问题,重新畅享AI助力!,ai少女大瓜
GPT-3模型下载:开启智能时代的无限可能,ai走入