JS的部分部分疑问和小结
2015/9/1
1.在字符串中没有可以所需要查找的“X”的时候,返回的值
java:lastIndexof -1
js: IndexOf undefined...
2015/9/10
1.js:string.substr(start[,length])
如,selecter.dm = selectIndex.substr(3);tr_1234取到“1234”
2015/9/11
1.iframe.src=url;button的onclick事件后直接跳转?
2.配置环境变量:区分用户、环境
最好用户还是使用administrator的用户,(系统一般是先调用系统,然后调用用户?)《实在不行再用户变量中也设置,此外cmd-set查看参数》
3.WorkBook、JSONObject工具的使用
2015/9/16
1.js中使用的ActiveXObject对象,简单理解:加载外部的程序到IE中
2.SQL语句:cast(12.5 AS int) = 12;用于数据类型的转换
3.httpclient:setParameter(“hh”,122)、.httpsend(url)、
2015/9/18
1.乱码问题:
js:xdata = encodeURI(encodeURI(xdata));
java:fUrl = URLDecoder.decode(URLDecoder.decode(fUrl,"utf-8"),"utf-8");
2015/9/23
1.js中使用的(function(){...})();(function(){...}()),是js立即执行函数的常见写法,在函数后面加个括号就能立即执行。
2.灵活应用js中的eval()方法,eval("var a="+data);取出在调用后台返回的数据。
2015/10/9
js:
1.<script>中使用方法,防止”<“,被解析为标签;
<script>
<![CDATA[
function(){
alert("</script>");
}
]]>
//非IE好像(注意”//“)
//<![CDATA[
function(){
alert("</script>");
}
//]]>
/**
* a < b;
**/
</script>
2015/11/10
1.js的addRow类的方法:
function addRow(id) {
var tr = document.getElementById(id + "_Item");
var oCloneNode = tr.cloneNode(true);
var comm = document.getElementById(id);
comm.insertBefore(oCloneNode,tr);
var len = comm.childNodes.length;
var index = len-2;
oCloneNode.id = id + "_Item" + index;
//setElementsId(oCloneNode,index);
oCloneNode.style.display = "block";
}
function setElementsId(obj,index){
var len = obj.childNodes.length;
for(var i = 0;i < len;i++){
var tmp = obj.childNodes[i];
var id = tmp.id
if(id){
tmp.id = id + index;
}
if(!tmp.id && tmp.name){
tmp.id = tmp.name + index;
}
setElementsId(tmp,index);
}
}
3.车牌号验证:js
var re = /^[\u4e00-\u9fa5]{1}[A-Z]{1}[A-Z_0-9]{5}$/;
if(!re.test($(ctrlId).value)){
obj.style.display = "block";
obj.innerHTML = infoTip;
}else{
cph_boo = true;
obj.style.display = "none";
}
4.excel导入,自行研究。
2015/11/24
1.<script type="text/javascript" src="jq.js"></script>此处的src为相对路径,/jq.js为绝对路径
2015/12/2
页面提交form时,刷新的是??
form.submit();并不会触发submit事件,提交给后台
2015/12/15
1.表格显示添加一个单选列
var tableColum=[
["RADIO", "String", "选择", "35", "center", "RADIO"],
["DKEY", "String", "权限代码", "100", "center", ""],
["DVAL", "String", "权限名称", "180", "center", ""]
];
2.<a href="javascript:scroll(0,0)">返回顶部</a>
2015/12/16
1.去除select其他option
for(var i=1;i<fy2.options.length;){
fy2.removeChild(fy2.options[i]);
}
2.IE与非IE的兼容性问题
if($.browser.msie && $.browser.version <=9){
tmp = obj.childNodes[i];
}else{
tmp = obj.children[i];
}
3.ie:支持innerText和innerHTML
支持tmp.name
not ie:支持innerHTML和textContent
不支持tmp.name,可以用tmp.getAtrribute("name")
4.检测浏览器类型
function judgeBrowser(){
var userAgent = navigator.userAgent;
var isOpera = userAgent.indexOf("Opera") > -1;
var isIE = userAgent.indexOf("compatible") > -1;
var isFF = userAgent.indexOf("Firefox") > -1;
var isSafari = userAgent.indexOf("Safari") > -1;
if(isIE){
var IE5 = IE55 = IE6 = IE7 = IE8 = IE9 = false;
var version = /MSIE\s(\S)/.exec(userAgent)[1];
var fIEVersion = parseFloat(version);
switch(fIEVersion){
case 5.5:
return "IE5.5";
case 6:
return "IE6";
case 7:
return "IE7";
case 8:
return "IE8";
case 9:
return "IE9";
default:
return "IEX"
}
if(isOpera){
return "Opera";
}
if(isFF){
return "Firefox";
}
if(isSafari){
return "Safari";
}
}
}
2015/12/18
1.html nodeType=1(为元素节点)
iType:Integer that receives one of the following values.
1 Element node.
3 Text node.
2016/1/26
1.迭代地为button添加event,使用了attachEvent,但是添加多个事件后顺序随机(但是脚本之家的资料是说逆序执行)
function addEvent(obj,type,eve){//添加事件的id,为什么类型的标签添加,添加什么事件
alert(tid+","+type+","+event)
if(obj){
var len = obj.childNodes.length;
for(var i = 0;i < len;i++){
var tmp = obj.childNodes[i];
if(tmp){
var tp = tmp.tagName;
if(tp == type){
tmp.attachEvent("onclick",eve);
}
addEvent(tmp,type,eve);
}
}
}else{
alert("Obj has problem!")
return;
}
}
2.
var rsRows = document.getElementById("rstable").tBodies[0].rows;
var rowNum = rsRows.length;
var j = 0;
for(var i=0; i<rowNum; i++){
var chk = rsRows[i].cells[this.chk_pos].childNodes[0];
if(chk.type == "checkbox" && chk.checked){
var spmc = rsRows[i].cells[this.spmc_pos].innerText;
returnVal[j] = spmc;
j++;
}
}
window.returnValue = returnVal;
self.close();
3.
Array.prototype.contains = function(key) {
var isSearched = false;
for(var i = 0; i < this.length; i++) {
if(this[i] == key) {
isSearched = true;
break;
} else {
continue;
}
}
return isSearched;
};
Array.prototype.indexOf = function(val){
for(var i=0;i < this.length;i++){
if(this[i] == val){
return i;
}
}
return -1;
}
Array.prototype.remove = function(key){
var index = this.indexOf(key);
if(index > -1){
this.splice(index,1)
}
}
2016/1/28
1.好记性不如烂笔头。
window.history.go(-1);
location.href="home.jsp";
window.open(url);
window.opener.doquery()/.init();
window.close();
2.
2016/2/1(在出问题时,要注意《单词拼错》)
1.取table中点击触发事件的那一行
var currRow = (event.srcElement || event.target).parentNode.parentNode;
currRow.cells[this.lysq_pos/0/1].innerHTML
2.圆角IE6-8不兼容,IE9+兼容,需要下载插件ie-css3.htc
css3:
border-radius:30px;
3.mysql取id最大的记录
select * from bghc_splcmx where id=(select max(id) from bghc_splcmx)
select * from bghc_splcmx order by id desc limit 0,1
JS的部分部分疑问和小结的更多相关文章
- fullpage.js全屏滚动插件使用小结
刚做好公司网站,通过全屏滚动,显著提高了官网的浏览体验.遂总结一下使用fullpage.js的方法.欢迎指正 一. fullpage.js简介 fullpage.js是一套实现浏览器全屏滚动的js插件 ...
- js/jquery判断浏览器的方法小结
在网站前端开发中,浏览器兼容性是前端开发框架要解决的第一个问题,要解决兼容性问题就得首先准确判断出浏览器的类型及其版本,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道.今天我们把 ...
- JS变量、内存、作用域小结
确保占用最少的内存可以让页面获得更好的性能,优化内存占用的最佳方式:为执行中的代码 只保存必要的数据.一旦数据不再有用,最好通过将其值置为null来释放其引用.适用于大多 数全局变量和全局对象的属性. ...
- JS的Document属性和方法小结
Document想必大家并不陌生吧,在使用js的过程中会经常遇到它,那么它有哪些属性.哪些方法,在本文将以示例为大家详细介绍下,希望对大家有所帮助 document.title //设置文档标题等价于 ...
- 关于js中this的疑问
学习bootstrap.js源码中被js里边的this绕的有点晕 /* ================================================================ ...
- js获取IP地址的方法小结
s代码获取IP地址的三种方法,在js中取得客户端的IP地址. 原文地址:http://www.jbxue.com/article/11338.html 1,js取得IP地址的方法一 <scrip ...
- JS学习笔记-OO疑问之对象创建
问一.引入工厂,解决反复代码 前面已经提到,JS中创建对象的方法,不难发现,主要的创建方法中,创建一个对象还算简单,假设创建多个类似的对象的话就会产生大量反复的代码. 解决:工厂模式方法(加入一个专门 ...
- JS学习笔记-OO疑问之封装
封装是面向对象的基础,今天所要学习的匿名函数与闭包就是为了实现JS的面向对象封装.封装实现.封装变量,提高数据.系统安全性,封装正是面向对象的基础. 一.匿名函数 即没有名字的函数,其创建方式为 fu ...
- echarts.js多图表数据展示使用小结
echarts api文档: http://echarts.baidu.com/echarts2/doc/doc.html echarts demo示例: http://echarts.baidu.c ...
随机推荐
- Java JNA (三)—— 结构体使用及简单示例
JNA简介 JNA全称Java Native Access,是一个建立在经典的JNI技术之上的Java开源框架(https://github.com/twall/jna).JNA提供一组Java工具类 ...
- Kvm --01 虚拟化基础概念
目录 1. 虚拟化基础概念 01. 什么是虚拟化? 02. 为什么要用虚拟化? 03. 虚拟化在企业中的应用场景? 04. 虚拟化软件介绍 05. Kvm介绍 2. 安装部署Kvm 3. Kvm虚拟机 ...
- 使用macOS苹方替换Windows 10微软雅黑
关于微软雅黑 Windows从Vista开始用到现在的”微软雅黑”十多年以来基本没什么大改动,而大家的显示器从CRT进化到了IPS高分屏,十年前看着还OK的字体现在在绝大多数屏幕上可能就是这个样子的: ...
- Mongodb使用shell实现与javascript的动态交互
关于利用mongodb的shell执行脚本,这点在以前的文章中有点遗漏:现在在此篇博客中做个补充: 一.在命令行中传入脚本文件 定义一个javasciprt文件,名称为:script1.js,内容如下 ...
- 第04章 AOP概述
第04章 AOP概述 1.AOP概述 ●AOP(Aspect-Oriented Programming,面向切面编程):是一种新的方法论,是对传统 OOP(Object-Oriented Progra ...
- Graphics 绘图
Graphics类提供基本绘图方法,Graphics2D类提供更强大的绘图能力. Graphics类提供基本的几何图形绘制方法,主要有:画线段.画矩形.画圆.画带颜色的图形.画椭圆.画圆弧.画多边形等 ...
- jQuery中keyup() 和 keydown()方法
kuydown()方法与上方用法一样:一个按键松开执行代码,一个按键按下执行.
- 前端开发工具-VsCode插件【个人开发常用】
前端开发工具-VsCode插件[个人开发常用] Atom One Dark Theme-主题 Chinese (Simplified) Language Pack for Visual Studio ...
- boost circularBuffer
1. circular buffer has two fundamental properties: (1): The capacity of the circular buffer is const ...
- VC++ 创建及调用Dll
一._stdcall 被这个关键字修饰的函数,其参数都是从右向左通过堆栈传递的(__fastcall 的前面部分由ecx,edx传), 函数调用在返回前要由被调用者清理堆栈. 这个关键字主要见于Mic ...