`

兼容IE和FirFox--禁止输入空字符-定位光标

阅读更多
<script type="text/javascript">
var len;
//去掉左边空格
function ltrim(s) 
{ 
 return s.replace(/(^\s*)/g, ''); 
} 

//去掉右边空格
function rtrim(s) 
{ 
return s.replace(/(\s*$)/g, ''); 
} 

//去掉左右空格
function trim(s){ 
return rtrim(ltrim(s));  
} 

function clearNoStr(obj){
          var start=obj.selectionStart;
          var end=obj.selectionEnd;
		  var report=document.getElementById(obj.id).value;
          var reportItem=trim(report);
		  var res=report.substring(start-1,start);
				if(typeof document.selection != "undefined")
                 {
					var s=document.selection.createRange();   
					s.setEndPoint("StartToStart",obj.createTextRange()) 
					len=trim(s.text).length;
                 }else{
				     obj.focus();
					 obj.setSelectionRange(start,end);
				 }
          
           
          if(reportItem=='' || reportItem==null){
          			document.getElementById(obj.id).value=report.substring(report.length);
          }else{
             var count=report.substring(0,report.length-reportItem.length);
             var countLength=count.length;
			 var countStr="";
			 //去掉左边的空格符
             for(var i=0;i<countLength;i++){
                 countStr+=" ";
             }
			 var temp=report.substring(0,1);
			 
             if(count==countStr){
			   document.getElementById(obj.id).value=report.substring(countLength);
			   if(temp==" "){
			      if(typeof document.selection != "undefined")
                  {
				        var range=obj.createTextRange(); 
                        range.moveStart('character',0);
                        range.collapse(true); 
                        range.select();
                   }else{
					    obj.focus();
			            obj.setSelectionRange(0,0);
                   } 
			   }
             }else{
              document.getElementById(obj.id).value=report.substring(0,reportItem.length);
              }
         }
         clearInnerStr(obj,temp,res,start,end);
}
 function clearInnerStr(obj,temp,res,start,end){
        var reqStr=document.getElementById(obj.id).value;
		var size=reqStr.length;
		var noStr="";
		var k=0;
		for(var i=0;i<size;i++){
		   noStr=reqStr.charAt(i);
		    if(noStr==" "){
			   k++;
		       IgnoreSpaces(obj.id,reqStr);
			}
		}
		if(typeof document.selection != "undefined")
        {
				     var range = obj.createTextRange(); 
                     range.moveStart('character',len);
                     range.collapse(true); 
                     range.select();
         }else{

			if(temp==" "){      
			  obj.setSelectionRange(0,0);
			}else{
			     var resStr=document.getElementById(obj.id).value;
				 var resSize=resStr.length;
				  if(res==" "&&k>0){
				    obj.setSelectionRange(start-k,end-k);
				  }
			}
        } 

}

function IgnoreSpaces(id,Str){
    var ResultStr = ""; 
    Temp=Str.split(" ");//双引号之间是一个空格
    for(i = 0; i < Temp.length; i++){ 
    ResultStr +=Temp[i]; 
    }
    document.getElementById(id).value=ResultStr;
}
</script>
禁止在内容中输入空字符:<input type="text" id="name" value="" onkeyup="clearNoStr(this);"><p>

0
1
分享到:
评论

相关推荐

    兼容ie,firfox,chrome的页面广告随机飘动效果

    这个项目名为"兼容ie, firfox, chrome的页面广告随机飘动效果",旨在实现一个能在主流浏览器(Internet Explorer, Firefox, Chrome)上运行的广告飘动特效,确保跨浏览器的兼容性。这种效果通常通过JavaScript库,...

    树形菜单javascript(兼容IE,Firfox,刷新记忆)

    在本案例中,我们关注的是一个用JavaScript实现的树形菜单,它具有优秀的跨平台兼容性和高效的性能。让我们深入探讨这个JavaScript树形菜单的特点和相关知识点。 首先,这个树形菜单设计的核心在于其对不同浏览器的...

    一个兼容IE、Chrome和Firfox的HTML固定表头例子

    这个示例兼容了三种主流浏览器:Internet Explorer(IE)、Google Chrome和Mozilla Firefox,这涵盖了大部分用户的浏览器环境。 在描述中提到的“博文链接:https://sheng.iteye.com/blog/1199433”,这是一个IT...

    前端设计IE6IE7IE8IE9FF问题汇总IE和FirFox兼容问题[参照].pdf

    5. **用idName字符串取得对象问题**:IE支持`eval(idName)`获取ID为`idName`的对象,而Firefox需要使用`getElementById(idName)`。应避免使用`eval`,因为它可能引发安全问题和性能问题。 6. **变量名与HTML对象id...

    C# Firfox geckofx-33.0

    标签中提到的"geckofx"是该项目的核心库,"IE"代表Internet Explorer,可能是因为Geckofx与IE的WebBrowser控件相比,提供了更现代和标准的Web渲染能力。而"浏览器"标签则强调了这个库的主要应用场景——构建带有内置...

    判断当前使用的浏览器版本ie、firfox等

    以上方法可以有效地检测并获取IE和Firefox的版本信息。然而,需要注意的是,随着浏览器的发展,这种基于`userAgent`的检测方式可能会变得不准确,因为现代浏览器会模拟老版本的行为。因此,最佳实践是尽可能使用特性...

    单击其它区域关闭日历控件(兼容firfox与IE)

    "单击其它区域关闭日历控件(兼容firfox与IE)"这个主题涉及到的是一个常见的前端交互功能,即如何通过JavaScript或者特定的库来实现日历控件的交互优化,使其在用户选择日期后能够通过点击页面上的其他区域来关闭。...

    一款轻量、无依赖的 相同 name 的表单验证,动态验证,兼容 chrome 、firfox 、IE9 +的JavaScript

    本文将深入探讨一个针对Web应用开发的轻量级JavaScript验证组件,该组件专为处理具有相同name属性的表单字段进行动态验证,并且兼容主流浏览器,包括Chrome、Firefox以及IE9及以上版本。 表单验证是Web应用中不可或...

    HttpWatch(支持firfox、IE)

    字符查询.POST 数据和目录管理功能.报告输出.HttpWatch 是一款能够收集并显示深层信息的软件。它不用代理服务器或一些复杂的网络监控工具,就能够在显示网页同时显示网页请求和回应的日志信息。甚至可以显示浏览器...

    octotree-3.0.10-firfox.zip

    Firefox插件的版本3.0.10,意味着它已经经过多次迭代和优化,具备了一定的稳定性和兼容性。在这个版本中,开发者可能已经修复了一些已知的bug,并可能引入了一些新的特性或改进,以提升用户体验。例如,可能增加了对...

    firfox和ie6的js执行效率比较

    标题中的“firfox”应该是“Firefox”,这是一款由Mozilla开发的开源网络浏览器,而“ie6”指的是微软的Internet Explorer 6,这是一个较旧版本的IE浏览器。本话题主要探讨的是JavaScript在Firefox和IE6这两款浏览器...

    Flex调试工具 IE Firfox

    本文将详细介绍如何在Internet Explorer(IE)和Firefox浏览器中使用Flex调试工具。 1. **Flex Builder集成开发环境**: Flex Builder是Adobe提供的IDE,内置了强大的Flex调试工具。它支持Eclipse平台,提供代码...

    firfox firfox firfox firfox

    firfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfoxfirfox

    javascript表格可调整列宽(兼容firfox/IE)

    本demo使用jQuery包,实现表格列宽可拖拽功能,并实现页面reset时的重新布局。使用jQuery,方便函数的调用,给要处理的表格添加id 后,直接调用$("#id").movedTh()即可方便实现,修改了firfox的兼容性。

    firefox-3.6.3.source.tar.bz2

    firefox-3.6.3.source.tar.bz2firefox-3.6.3.source.tar.bz2

    GeckoFX C# Firfox v45.0-0.31 含最新版示例

    虽然较新版本的.NET框架提供了更多的特性和改进,但.NET 2.0由于其广泛兼容性和稳定性,仍然在许多项目中被使用。将GeckoFX移植到.NET 2.0意味着开发者能够利用这个强大的Web浏览功能,而无需升级他们的.NET框架。 ...

    css兼容性问题总结笔记

    这里的Hack通过不同的特殊字符和语法来针对不同的浏览器和版本进行样式定制。例如,`_` 和 `*` 分别表示IE6和IE7及以下版本的特殊语法,`\9` 可以被IE9及以上版本识别。 **2. Hack写法列表** - **FireFox**: 不...

    firfox最最好用的插件

    标题中的“firfox最最好用的插件”指的是Firefox浏览器的一些最受欢迎和实用的扩展插件。这些插件能够提升Firefox的使用体验,增加各种功能,满足用户的不同需求。以下是各个插件的详细介绍: 1. **Coral IE Tab**:...

    firfox and firedebug

    标题中的"Firfox and Firebug"指的是Mozilla Firefox浏览器与Firebug这款强大的JavaScript和网页开发调试工具的组合。Firefox是一款开源的网络浏览器,以其高度可定制性、安全性以及对Web标准的良好支持而广受开发者...

    GeckoFX C# Firfox v45.0-0.31 最新版示例

    7. **错误处理和调试**:学习在使用GeckoFX时可能出现的问题,以及如何通过调试工具来定位和解决这些问题。 8. **性能优化**:由于GeckoFX是基于Firefox内核,可能需要考虑内存管理和性能优化,尤其是在旧版.NET...

Global site tag (gtag.js) - Google Analytics