- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
考虑 navbar
的这个 $routeProvider
配置并假设没有缓存
app.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl : 'pages/home.html',
controller : 'mainController'
})
.when('/about', {
templateUrl : 'pages/about.html',
controller : 'aboutController'
})
.when('/contact', {
templateUrl : 'pages/contact.html',
controller : 'contactController'
});
});
我在网上看到,单页应用的优势之一是网络带宽,因为它不需要在用户每次切换页面时都传输 html 标签。
但是,当我们遇到上述情况时,navbar
将 home、about、contact 路由到单独的页面,难道不是每次都必须传输 html 标签吗?
它是否仍然通过消除 html 标签传输来节省网络带宽?
最佳答案
你可以说是,但同时也不是。如果你真的需要节省网络带宽,我知道 this website但我不太了解 jQuery,无法理解它在做什么,所以我无能为力。该网站只有一页,但导航菜单隐藏和显示 div,因此您只能获得一页的那种“多页”网站。希望我回答了你的问题并给了你一些你可以解决的问题。我确实把 jQuery 从网站上撤下来了,但我无法让它工作,所以也许你能弄清楚并 PM 我发生了什么事。
编辑:我弄明白了 jQuery,所以我会把我的完整代码笔放在下面;)。
$(function(){
$("#nav-home").click(function(){
$("#home").show();
$("#projects").hide();
$("#contact").hide();
$(".selected").removeClass("selected");
$("#nav-home").addClass("selected");
});
$("#nav-projects").click(function(){
$("#home").hide();
$("#projects").show();
$("#contact").hide();
$(".selected").removeClass("selected");
$("#nav-projects").addClass("selected");
});
$("#nav-contact").click(function(){
$("#home").hide();
$("#projects").hide();
$("#contact").show();
$(".selected").removeClass("selected");
$("#nav-contact").addClass("selected");
});
});
body {
padding-top: 4em
}
#navbar {
height:100%;
width: 14em;
padding: 0.5em;
}
#navbar h1 {
margin-top: 1em;
margin-bottom: 2em;
display: block;
}
#navbar ul li {
display: list-item;
margin: 0.2em 0em;
}
#navbar ul {
margin: 1.4em;
display: block;
}
#page {
padding-top: 0;
padding-left: 16.5em;
}
#navbar {
position: fixed;
width: 100%;
height: 3em;
top: 0;
left: 0;
background-color: #282726;
box-shadow: inset -1em 0 2em rgba(0,0,0,0.2);
color: #FFFFFF;
text-shadow: 0 0 1em rgba(0,0,0,0.4);
text-align: center;
z-index: 100;
font-size: 110%;
}
#navbar h1 {
font-size: 2em;
color: #0077FF;
margin: 0.2em;
display: inline;
}
#navbar ul {
list-style: none;
font-size: 1.4em;
text-align: left;
margin: 0.6em;
display: inline;
}
#navbar ul li {
margin: 0.2em;
display: inline;
cursor: pointer;
}
#navbar ul li:hover,#navbar ul li.selected {
color: #0077FF;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="navbar">
<h1>Sample Page</h1>
<ul>
<li id="nav-home" class="selected">- Home</li>
<li id="nav-projects">- Projects</li>
<li id="nav-contact">- Contact</li>
</ul>
</div>
<div id="home">Home Items Here</div>
<div id="projects" style="display: none;">Project List Here</div>
<div id="contact" style="display: none;">Contact Me here</div>
关于html - 使用 $routeProvider 是否节省网络带宽?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44713779/
我刚刚开始学习 AngularJS,但我多次注意到同样的事情,当我们开始用 AngularJS 编写函数时,我注意到有些人像这样定义他们将要使用的函数 var mainApp = angular.mo
我遇到了一点挑战,还没有找到解决方案。当我尝试了一些事情时,我正在请求你的帮助,所以可能有人可以引导我走向正确的方向。 我在 AngularJS 中有一个 routes.js。我正在使用 $route
我正在尝试实现 named routes ,所以我不必编写整个路径(经常更改)。 我在想我可以写一个服务来返回定义的路由列表和一个将对象转换为路由的过滤器 使用示例如下所示: Click here!
AngularJS documentation表示 ngRoute $routeProvider 有一个 reload 方法。 reload() Causes $route service to re
我正在尝试了解 AngularJS 中的路由如何工作,以制作一个小应用程序,允许用户登录并在实时提要中撰写评论。然而,路线的整个概念对我来说有点模糊,我无法正确理解这一点。 我的标准index.htm
我在grails应用程序中使用angularJS。在此之前,我尝试了互联网上的样本。我试图在我的主 View 中将angularJS $ routeProvider用于部分 View 。我的工作流程如
所以我的网站并不是 100% 都是“由 AngularJS 提供支持”,其中一些只是简单的静态 HTML,比如登陆页面或面向内容的内容,这是简单的 HTML,原因很明显。 我似乎可以获得正常导航的链接
我正在使用 this Angular 路由教程。这是它给出的使用 resolve 的示例: $routeProvider .when("/news", { templateUr
我有一个非常简单的要求。 我有 3 个用户 Angular 色: 猫用户 LICUSER 所有用户 我在 $rootScope.userRole 变量中拥有用户 Angular 色的值。 我在 Ang
我有两条路线通向相同的 View 和 Controller (即我只是传入一个 id 以在 $routeParams 中访问并在其上执行 Controller 逻辑): $routeProvider
我已经添加了这样的脚本 我在我的 test.js 中做了这个 var app = angular.module('MyApp', ['ngRoute']).config
我已经尝试了几种不同的方式,我将尝试使用所有不同的方式重定向到不同的页面,但所有这些方式都出现 404 错误。 index.html 这个页面没问题,根正在渲染: You are using
有没有办法编写一个方法来解析即将到来的 $location.path 并加载特定的 html 模板或应用 $route。目前,我的应用程序有这个长长的“时间”列表,完成后将增加一倍或三倍。 .con
我已阅读与同一问题相关的帖子并交叉验证了我的代码,但问题仍然存在。 以下是我的index.html文件 Webs
我正在尝试编写 Angular.js 教程。但我想我没有正确进行路由。我已正确遵循文档,但是当我单击超链接时,angular 不会路由到指定的 html。请帮帮我。我是 Angular 的新手。提前致
我有一个问题和疑问 我的客户端使用: 以及以下脚本: 我的 routProvider 是: angular.module('myApp', []). c
我正在使用 USB 设备构建一个 chrome 应用程序。在我的主要 app.js 中,我希望始终检查设备何时添加/删除并更改 url。 angular.module('rfApp', [ '
如果 sessionStorage.logged 设置为 true,我想将 mypage 重定向到主页。下面是我的代码。为什么我下面的代码不起作用。 因为我是 angularjs 的新手,所以我不知道
我有一个应用程序,我没有使用路由提供程序,但我仍然想对更改的哈希值采取行动。当我手动更新 URL 而不是链接时, Controller 中的普通 window.onhashchange 起作用: Li
我的 app.js 中有以下 2 条路线文件,出于某种原因,我不知道何时尝试导航到 /clients/new-invoice我看到了 /clients/:clientID路线和模板。我可以转到正确页面
我是一名优秀的程序员,十分优秀!