今天在上班的时候碰到了要根据不同的页面随机添加栏目的问题,很简单的问题,想到了判断页面url是否含有某字符串来进行随机添加栏目、。。这就需要了解location对象。

location 属性名 属性说明
hash 设置或返回从井号 (#) 开始的 URL
host 设置或返回主机名和当前 URL 的端口号。
hostname 设置或返回当前 URL 的主机名。
href 设置或返回完整的 URL。
pathname 设置或返回当前 URL 的路径部分。
port 设置或返回当前 URL 的端口号。
protocol 设置或返回当前 URL 的协议。
search 设置或返回从问号 (?) 开始的 URL(查询部分)。

以上就是location函数相关,这些在一些方面还是相当不错的选择。具体事例,看下边的demo。

首先我们设置首页,首页中有很多栏目链接,为了方便这里首页用index1命名,简化代码。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>首页1</title>
</head> <body>
<a href="index2.html">index2</a>
<a href="index3.html">index3</a>
</body>
</html>

其次我们设置index2栏目的页面,在其页面中,我们要引入jquer文件,和我们自己写的js文件。更重要的是因为是随机添加进去的分栏(小模块),所以,我们要给出我们的分栏容器~

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>index2</title>
</head>
<script src="js/jquery-1.11.3.js" type="text/javascript" charset="utf-8"></script>
<script src="js.js" type="text/javascript" charset="utf-8"></script>
<body>
<div class="index2"> </div>
</body>
</html>

同理,我们设置index3的页面。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>index3</title>
</head>
<script src="js/jquery-1.11.3.js" type="text/javascript" charset="utf-8"></script>
<script src="js.js" type="text/javascript" charset="utf-8"></script>
<body>
<div class="index3"> </div>
</body>
</html>

这样首页,和首页要连接的页面就设置完毕,接下来我们需要设置的是链接到的index2,和index3页面上的随机分栏的内容页.例如链接到index2的分栏是,我们起名为getweb

<div class="div1">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>
<div class="div2">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>
<div class="div3">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>
<div class="div4">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>
<div class="div5">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>

同理链接到index3的分栏内容为getweb2

<div class="div1">
<ul>
<li>123</li>
<li>345</li>
<li>456</li>
<li>576</li>
</ul>
</div>
<div class="div2">
<ul>
<li>额版本</li>
<li>额版本</li>
<li>额版本</li>
<li>额版本</li>
</ul>
</div>

分栏的内容页做好后,剩下的就是我们的js代码了;

//根据url的信息来判断需要显示的内容。
$(function(){
var url=window.location.href;//获取完整的URL
if(url.indexOf("index2")>=0){//判断URL中是否含有某字符串(判断是哪一个页面)
$.get("getweb.html",function(data){
$(".index2").html(data);
});
}else if(url.indexOf("index3")>=0){
$.get("getweb2.html",function(data){
$(".index3").html(data);
});
}
});

怎么样是不是非常简单,这样的根据页面来随机添加分栏,在后期的维护和分栏内容更替都是相当方便的,我们只需要修改分栏内容页面就好。

浅谈------location的更多相关文章

  1. 浅谈location对象

    简介 Location 对象存储在 Window 对象的 Location 属性中,表示那个窗口中当前显示的文档的 Web 地址.通过Location对象,可以获取URL中的各项信息,调用对象方法也可 ...

  2. 浅谈Hybrid技术的设计与实现第三弹——落地篇

    前言 接上文:(阅读本文前,建议阅读前两篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 根据之前的介绍,大家对前端与Native的交互应该有一些简单的认识了,很多 ...

  3. 浅谈Hybrid技术的设计与实现第二弹

    前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...

  4. 浅谈Hybrid技术的设计与实现

    前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发 ...

  5. 浅谈HTML5单页面架构(二)——backbone + requirejs + zepto + underscore

    本文转载自:http://www.cnblogs.com/kenkofox/p/4648472.html 上一篇<浅谈HTML5单页面架构(一)--requirejs + angular + a ...

  6. 浅谈Linux中的信号处理机制(二)

    首先谢谢 @小尧弟 这位朋友对我昨天夜里写的一篇<浅谈Linux中的信号处理机制(一)>的指正,之前的题目我用的“浅析”一词,给人一种要剖析内核的感觉.本人自知功力不够,尚且不能对着Lin ...

  7. 浅谈用ModelSim+Synplify+Quartus来实现Altera FPGA的仿真

    浅谈用ModelSim+Synplify+Quartus来实现Altera FPGA的仿真 工作内容: Mentor公司的ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业 ...

  8. 浅谈OCR之Onenote 2010

    原文:浅谈OCR之Onenote 2010 上一次我们讨论了Tesseract OCR引擎的用法,作为一款老牌的OCR引擎,目前已经开源,最新版本3.0中更是加入了中文OCR功能,再加上Google的 ...

  9. 浅谈 URI 及其转义

    URI URI,全称是 Uniform Resource Identifiers,即统一资源标识符,用于在互联网上标识一个资源,比如 https://www.upyun.com/products/cd ...

随机推荐

  1. linux命令笔记,零散记录<不完整,学习用>

    uname -a 输出系统架构 cp 源文件 目标文件 mv同理 tar –xvf file.tar // 解压 tar包 tar -zxvf file.tar.gz // 解压tar.gz tar ...

  2. C# Winform下一个热插拔的MIS/MRP/ERP框架(通用控件)

    一直对商业控件不感冒, 结合日常工作, 我写了几个常用控件. 一.下拉框控件(仿Access下拉框:F4下拉,自动输入,支持单/多列显示),可在Datagridview中使用. 1.常规: 2.Dat ...

  3. win10 + Lubuntu 双系统安装

    win10 + Lubuntu 双系统安装 最近重装了系统,索性直接安装win10 + Lubuntu 双系统,便于在物理机下进行 Linux开发. 这里我选择的 Linux 发行版是 Lubuntu ...

  4. Android Gradle 隐形依赖的奇怪案例

    相信 Android 开发者都有在 Android Studio 中升级 compileSdkVersion 的经历,这个时候如果你使用了 support 包,并同时升级,那么可能会出现一个错误提示. ...

  5. 【BZOJ3417】[POI2013]MOR-Tales of seafaring (最短路SPFA)

    [POI2013]MOR-Tales of seafaring 题目描述 一个n点m边无向图,边权均为1,有k个询问 每次询问给出(s,t,d),要求回答是否存在一条从s到t的路径,长度为d 路径不必 ...

  6. ubuntu下的pycharm4中文路径乱码

    修改字体: 设置(settings)->外观与行为(appearance & behavior) -> 外观(appearance) ->我选择的主题是Darcula 但其字 ...

  7. python获取函数参数默认值的两种方法

    1.使用函数的__defaults__魔术方法 demo: # coding=utf-8 def f(a,b,c=1): pass f.__defaults__ 输出结果: (1,) 2.使用insp ...

  8. 50行代码实现python计算器主要功能

    实现功能:计算带有括号和四则运算的式子   3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 基本思路:使用正则表达式提取出每一层 ...

  9. vue 遇到的一个问题......

    当我用 @tap 或者 @click 触发 ajax事件时,返回的结果会非常慢--- 我也不清楚为啥会这样....(仅仅在chrome下会这样--- 所以 我用 touchend 方法替代了 该方法. ...

  10. Linux系统下Qt环境搭建

    http://www.linuxidc.com/Linux/2013-07/87576.htm 主要是需要提前安装一些动态库,否则编译的时候会出现 /usr/bin/ld: cannot find - ...