重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
为何要获取左下角的url地址,这些地址其实就是对象的a标签的href属性而已,所以你可以这样
目前成都创新互联已为成百上千家的企业提供了网站建设、域名、虚拟主机、网站托管运营、企业网站设计、郊区网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
input type="hidden" id="hidden" value="" /
$(document).ready(function(){
$("a").hover(function(){
$("#hidden").val($(this).attr("href"));
alert($("#hidden").val());
});
});
意思是当DOM结构加载完后即把页面所有的a链接加个hover事件,当鼠标移动上去时,就会把链接的href属性赋值给隐藏域,并弹出值
如果是一个固定的二维码,我们只需要在网上找个地方生成图片,然后放上图片就可以了。但如果是地址不固定需要根据页面来生成的话。就有两种做法,一个是后端根据页面做一个动态的二维码。一种是前端使用插件生成。
本文要推荐的是一个jQuery二维码插件,它可以根据你设定的地址来生成一个二维码,二维码可以有div格式的,也有Canvas格式的,canvas的支持自定义logo和文字在上面。
jquery.qrcode.js 是把它用jquery 方式封装起来的,用它来实现图形渲染,其实就是画图支持canvas 和table 两种方式
支持的功能主要有:
1.text : "" //设置二维码内容 render,canvas
2.width :256, //设置宽度
3.height : 256, //设置高度
4. typeNumber : -1, //计算模式
5.correctLevel : QRErrorCorrectLevel.H,//纠错等级
6.background : "#ffffff", //背景颜色
7.oreground : "#000000" //前景颜色
window.location.href
平时我们取得location的search的时候,往往都是要用location.search,然后根据取回的结果集再处理
1、先判断第一位是否是“?”,如果是则从?开始往后面处理
2、写程序以开始分隔,当然得先用unescape,或者用那个urldecode(具体的名字不记得了)处理一下,把之类的处理一下
3、以=分隔,这样才能可以取得一一对应的值。
现在方便了。jQuery有这样的插件了。。。。
先看下面的例子:
var url = location.search;
"?action=viewsection=infoid=123debugtesty[]=truetesty[]=falsetesty[]"
var section = $.query.get('section');
"info"
var id = $.query.get('id');
123
var debug = $.query.get('debug');
true
var arr = $.query.get('testy');
["true", "false", true]
var arrayElement = $.query.get('testy[1]');
"false"
var newUrl = $.query.set("section", 5).set("action", "do").toString();
"?action=dosection=5id=123"
var newQuery = "" + $.query.set('type', 'string');
"?action=viewsection=infoid=123type=string"
var oldQuery = $.query.toString();
"?action=viewsection=infoid=123"
var oldQuery2 = $.query;
?action=viewsection=infoid=123
var newerQuery = $.query.SET('type', 'string');
?action=viewsection=infoid=123type=string
var notOldQuery = $.query.toString();
"?action=viewsection=infoid=123type=string"
var oldQueryAgain = $.query.REMOVE("type");
?action=viewsection=infoid=123
var emptyQuery = $.query.empty();
""
var stillTheSame = $.query.copy();
?action=viewsection=infoid=123
使用什么插件可以达到这样神奇的简易处理的效果呢?
其实就是query.js这个插件,地址在
很多时候我们有从一个URL中提取域名,查询关键字,变量参数值等的需要,而万万没想到可以让浏览器方便地帮我们完成这一任务而不用我们写正则去抓取。方法就在JS代码里先创建一个a标签然后将需要解析的URL赋值给a的href属性,然后就得到了一切我们想要的了。
var a = document.createElement('a');
a.href = 'htt p:/ / s.h tml';
console.log(a.host);
利用这一原理,稍微扩展一下,就得到了一个更加健壮的解析URL各部分的通用方法了。
function parseURL(url) {
var a = document.createElement('a');
a.href = url;
return {
source: url,
protocol: a.protocol.replace(':',''),
host: a.hostname,
port: a.port,
query: a.search,
params: (function(){
var ret = {},
seg = a.search.replace(/^\?/,'').split(''),
len = seg.length, i = 0, s;
for (;ilen;i++) {
if (!seg[i]) { continue; }
s = seg[i].split('=');
ret[s[0]] = s[1];
}
return ret;
})(),
file: (a.pathname.match(/\/([^\/?#]+)$/i) || [,''])[1],
hash: a.hash.replace('#',''),
path: a.pathname.replace(/^([^\/])/,'/$1'),
relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [,''])[1],
segments: a.pathname.replace(/^\//,'').split('/')
};
}
用法
var myURL = parseURL('htt p:/ /abc.com:8080/dir/inde x.h tml?id=255m=hello#top');
myURL.file; // = 'index.html'
myURL.hash; // = 'top'
myURL.host; // = 'abc.com'
myURL.query; // = '?id=255m=hello'
myURL.params; // = Object = { id: 255, m: hello }
myURL.path; // = '/dir/index.html'
myURL.segments; // = Array = ['dir', 'index.html']
myURL.port; // = '8080'
myURL.protocol; // = 'http'
myURL.source; // = 'htt p:/ /abc.com:8080/dir/index.h tml?id=255m=hello#top'
比如现在url地址是 ;name=zsage=18
js:
var url = window.location.href;
var url_param = url.split("?")[1];
var url_param_arr = url_param.split("");
console.log(url_param_arr);