Prototype以及jQuery和CDN -内容分发网络在使用JavaScript实战运用

简介: Prototype以及jQuery和CDN -内容分发网络在使用JavaScript实战运用

@[toc]

使用Prototype

在这里插入图片描述

引用 Prototype

要测试JavaScript库,需要在web页面中引用它。
要引用库,请使用<script>标记,并将SRC属性设置为库的URL:

Prototype提供了使HTML DOM编程更容易的函数。
与jQuery类似,prototype也有自己的$()函数。
$()函数接受HTML DOM元素的ID值(或DOM元素),并向DOM对象添加新函数。
与jQuery不同,prototype不会替换onload()的ready()方法。

相反,prototype为浏览器和HTML DOM添加了扩展。
在JavaScript中,可以指定一个函数来处理窗口加载事件:

function myFunction()
{
    var obj=document.getElementById("h01");
    obj.innerHTML="Hello Prototype";
}
onload=myFunction;

Prototype 方式:

function myFunction()
{
    $("h01").insert("Hello Prototype!");
}
Event.observe(window,"load",myFunction);

引用jQuery

要测试JavaScript库,需要在web页面中引用它。
要引用库,请使用<script>标记,并将SRC属性设置为库的URL:

主要的jQuery函数是$()函数(jQuery函数)。如果将DOM对象传递给此函数,它将返回一个添加了jQuery函数的jQuery对象。
JQuery允许通过CSS选择器选择元素。
在JavaScript中,可以指定一个函数来处理窗口加载事件:

function myFunction()
{
    var obj=document.getElementById("h01");
    obj.innerHTML="Hello jQuery";
}
onload=myFunction;
function myFunction()
{
    $("#h01").html("Hello jQuery");
}
$(document).ready(myFunction);

其他框架

YUI-雅虎用户界面框架涵盖了大量函数库,从简单的JavaScript函数到完整的Internet小部件。
ExtJS-用于构建富互联网应用程序的可定制小部件。
Dojo-用于DOM操作、事件、小部件等的工具包。
script.aculo。美国-用于视觉效果和界面行为的开源JavaScript框架。
Uize-小部件、AJAX、DOM、模板等。

CDN -内容分发网络

如果许多不同的网站使用相同的JavaScript框架,那么将框架清单放在每个页面共享的公共位置是有意义的。
CDN(内容交付网络)解决了这个问题。CDN是包含可共享代码库的服务器网络。
国内免费CDN资源包括:

<script src="https://cdn.staticfile.org/jquery/3.4.0/jquery.min.js">
</script>

使用框架

在决定为web页面使用JavaScript框架之前,最好先测试框架。
JavaScript框架易于测试。不需要在计算机上安装它们,也没有安装程序。
通常,只需要从网页中引用库文件。

JavaScript 创建Cookie

JavaScript可以使用文档Cookie属性来创建、读取和删除Cookie。
在JavaScript中,按如下方式创建cookie:

document.cookie="username=John Doe";

还可以在cookie中添加过期时间(UTC或GMT)。默认情况下,浏览器关闭时会删除Cookie:

document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT";

使用路径参数告诉浏览器cookie的路径。默认情况下,Cookie属于当前页面。

document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/";

Cookie 字符串

文件cookie属性看起来像普通的文本字符串,但实际上不是。
即使在文档中,完整的cookie字符串也会写入cookie中。重新读取cookie信息时,cookie信息以名称/值对的形式显示。
如果设置了新的cookie,则不会覆盖旧cookie。新的cookie将添加到文档cookie中,因此如果重新阅读文档。cookie,将获得以下数据:

cookie1=value; cookie2=value;

获取 cookie 值的函数

function getCookie(cname)
{
  var name = cname + "=";
  var ca = document.cookie.split(';');
  for(var i=0; i<ca.length; i++) 
  {
    var c = ca[i].trim();
    if (c.indexOf(name)==0) return c.substring(name.length,c.length);
  }
  return "";
}

cookie名称的参数是CNAME。
创建文本变量以检索指定的Cookie:CNAME+“=”。
使用分号拆分文档Cookie字符串,并将拆分字符串数组分配给Ca(Ca=document.Cookie.split(“;”)。
循环CA数组(I=0;I<CA.length;I++),然后读取数组中的每个值,并删除前后的空格(C=CA[I].Trim())。
如果找到cookie(c.indexof(name)==0),则返回cookie的值(c.substring(name.Length,c.Length)。
如果未找到cookie,请返回“”。

相关文章
|
13天前
|
设计模式 前端开发 JavaScript
【JavaScript 技术专栏】JavaScript 设计模式与实战应用
【4月更文挑战第30天】本文探讨JavaScript设计模式在提升开发效率和代码质量中的关键作用。涵盖单例、工厂、观察者、装饰器和策略模式,并通过实例阐述其在全局状态管理、复杂对象创建、实时数据更新、功能扩展和算法切换的应用。理解并运用这些模式能帮助开发者应对复杂项目,提升前端开发能力。
|
1月前
|
JavaScript 前端开发 算法
JavaScript 中的 if 判断:深入理解、实战应用与进阶技巧
【4月更文挑战第7天】探索 JavaScript 中的 if 判断语句,它是构建逻辑清晰程序的基础。了解其概念、语法、应用示例及编程技巧,包括条件控制、else if 结构、三目运算符。注意条件表达式简洁性,避免 falsy 值陷阱,利用逻辑运算符优化,并减少 if 嵌套。实践这些技巧将提升编程能力和代码质量。
24 0
|
1月前
|
JavaScript 前端开发 算法
JavaScript 中算术操作符:全面解读、实战应用与最佳实践
【4月更文挑战第5天】本文探讨JavaScript中的算术操作符,包括加、减、乘、除、求余、自增、自减及复合赋值等,强调理解与熟练运用它们对提升编程效率和代码准确性的重要性。文中通过示例介绍了各种操作符的用法,同时提醒注意数据类型转换、浮点数精度、除以零错误以及利用短路求值优化逻辑等问题。通过学习,读者能更好地掌握算术操作符在不同场景的应用,提升编程技能。
23 1
|
2月前
|
开发框架 前端开发 JavaScript
使用JavaScript、jQuery和Bootstrap构建待办事项应用
使用JavaScript、jQuery和Bootstrap构建待办事项应用
15 0
|
4月前
|
JavaScript Android开发
AutoJs4.1.0实战教程---js文件打包发布成APK文件
AutoJs4.1.0实战教程---js文件打包发布成APK文件
165 0
AutoJs4.1.0实战教程---js文件打包发布成APK文件
|
2天前
|
JavaScript 前端开发
在JavaScript中,函数原型(Function Prototype)是一个特殊的对象
JavaScript中的函数原型是一个特殊对象,它为所有函数实例提供共享的方法和属性。每个函数在创建时都有一个`prototype`属性,指向原型对象。利用原型,我们可以向所有实例添加方法和属性,实现继承。例如,我们定义一个`Person`函数,向其原型添加`greet`方法,然后创建实例`john`和`jane`,它们都能调用这个方法。尽管可以直接在原型上添加方法,但推荐在构造函数内部定义以封装数据和逻辑。
8 2
|
10天前
|
JavaScript 前端开发 C++
【Web 前端】JavaScript window.onload 事件和 jQuery ready 函数有何不同?
【5月更文挑战第2天】【Web 前端】JavaScript window.onload 事件和 jQuery ready 函数有何不同?
|
13天前
|
JavaScript 前端开发 开发工具
【JavaScript 技术专栏】Node.js 基础与实战
【4月更文挑战第30天】本文介绍了Node.js的基础及应用,包括事件驱动的非阻塞I/O、单线程模型和模块系统。内容涵盖Node.js的安装配置、核心模块(如http、fs、path)及实战应用,如Web服务器、文件操作和实时通信。文章还讨论了Node.js的优劣势、与其他技术的结合,并通过案例分析展示项目实施流程。总结来说,Node.js是高效后端开发工具,适合构建高并发应用,其广阔的应用前景值得开发者探索。
|
13天前
|
缓存 JavaScript 前端开发
【JavaScript技术专栏】JavaScript性能优化实战
【4月更文挑战第30天】本文探讨了JavaScript性能优化技巧,包括理解性能瓶颈(代码执行、DOM操作、网络请求和逻辑复杂度)和针对性优化。建议避免全局变量、延迟加载、减少循环嵌套及使用事件委托以优化代码执行;减少DOM操作次数、利用虚拟DOM和避免回流重绘优化DOM操作;通过压缩合并资源、使用CDN和按需加载加速网络请求;选择高效算法和合理数据结构降低计算开销。综合运用这些方法能显著提升前端应用性能。
|
14天前
|
JavaScript 前端开发 开发者
【专栏】JavaScript 中的 prototype 和__proto__是关乎对象继承和属性查找的关键概念
【4月更文挑战第29天】JavaScript 中的 prototype 和__proto__是关乎对象继承和属性查找的关键概念。prototype 是函数属性,用于实现对象继承,方法和属性定义在其上可被所有实例共享。__proto__是对象属性,实现属性查找机制,当对象自身找不到属性时,会沿原型链向上查找。两者关系:__proto__指向构造函数的 prototype,构成对象与原型的桥梁。虽然 prototype 可直接访问,但__proto__由引擎内部维护,不可见。理解两者区别有助于深入学习 JavaScript。