收集的JavaScript代码

来源:互联网 发布:atlas软件是什么软件 编辑:程序博客网 时间:2024/04/30 19:59
一、取URL中的参数
①function getParameterByName(name) {    var match = RegExp('[?&]' + name + '=([^&]*)')                    .exec(window.location.search);    return match && decodeURIComponent(match[1].replace(/\+/g, ' '));}

②function GetQueryString(name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");var r = window.location.search.substr(1).match(reg);if(r != null) return unescape(r[2]);return null;}
$(function(){var show = GetQueryString('show');})

此处的传过去的参数show是链接中带的参数;


二、正则分组

var testStr="<div><img src='/a.jpg' alt='' /><span>test</span><img src='/b.jpg' alt='' /><span>TTest</span><img src='/c.png' alt='' /></div>";var reg=/<img\ssrc='(.*?)'\s+alt=''\s*\/>/g;var match=reg.exec(testStr),results=[];while(match != null){    results.push(match[1]);    match=reg.exec(testStr);}console.log(results);/*Array ["/a.jpg", "/b.jpg", "/c.png"]*/

三、jQuery中获取设置checkbox选中状态

$("#checkboxID").is(":checked");//jQuery 1.6 +$("#checkboxID").prop("checked");  选中checkbox://jQuery 1.6+$("#checkboxID").prop("checked", true);$("#checkboxID").prop("checked", false);//jQuery 1.5 and below$('#checkboxID').attr('checked','checked')$('#checkboxID').removeAttr('checked')

选中的是哪个

var check = $("div").find("input[type=radio]:checked");

四、jQ判断一个元素是不是存在

if ($(selector).length)


五、在jQuery中取消一个ajax请求

var xhr = $.ajax({    type: "POST",    url: "test.php",    data: "name=test",    success: function(msg){       alert( msg );    }});//取消请求xhr.abort()


要注意的是,在ajax请求未响应之前可以用xhr.abort()取消,但如果请求已经到达了服务器端,这样做的结果仅仅是让浏览器不再监听这个请求的响应,但服务器端仍然会进行处理。


六、JavaScript中克隆对象

function clone(obj) {    // Handle the 3 simple types, and null or undefined    if (null == obj || "object" != typeof obj) return obj;    // Handle Date    if (obj instanceof Date) {        var copy = new Date();        copy.setTime(obj.getTime());        return copy;    }    // Handle Array    if (obj instanceof Array) {        var copy = [];        for (var i = 0, var len = obj.length; i < len; ++i) {            copy[i] = clone(obj[i]);        }        return copy;    }    // Handle Object    if (obj instanceof Object) {        var copy = {};        for (var attr in obj) {            if (obj.hasOwnProperty(attr)) copy[attr] = clone(obj[attr]);        }        return copy;    }    throw new Error("Unable to copy obj! Its type isn't supported.");}

七、js中删除url中指定参数并返回url、

我们通过写好的函数可以对url中的各种参数进行查询,设置.唯独,忘记了删除。

我们可以删除url中指定的参数,并返回删除参数后的完整url

实现代码:

// 删除url中某个参数,并跳转function funcUrlDel(name){    var loca = window.location;    var baseUrl = loca.origin + loca.pathname + "?";    var query = loca.search.substr(1);    if (query.indexOf(name)>-1) {        var obj = {}        var arr = query.split("&");        for (var i = 0; i < arr.length; i++) {            arr[i] = arr[i].split("=");            obj[arr[i][0]] = arr[i][1];        };        delete obj[name];        var url = baseUrl + JSON.stringify(obj).replace(/[\"\{\}]/g,"").replace(/\:/g,"=").replace(/\,/g,"&");        return url    };}


例如:

url: http//xx.com/list?page=1&a=5
执行:
funcUrlDel("page")

返回的是:
http//xx.com/list?a=5





0 0