对三级标签理解的一些修正

前言

在上一篇HTML标签整理博文中,我对三级标签的理解是只要做到能识别就够了,而忽视了设计这些标签背后的目的。

基于内容的样式

这里我找了几个例子,在读者面前同样是表示斜体:

  1. <dfn>
    这是一个项目
  2. <em> 这段文字需要强调
    这段文字很重要
  3. <var>强调这段文字是一个变量名
    这是一个变量

就文字显示的效果看来,这些文字确实都是斜体,但这些斜体背后表现出来的含义是不同的。w3school把这种标签称为基于内容的样式,他们的出现主要就是为了强调内容的含义,在实际的使用过程中,如果仅仅只是为了实现文本效果,那么这些标签的意义就不大了

其他基于内容样式的标签也很有趣,如果有的标签没有任何样式上的改变,那应该是我的safari浏览器不支持了
1. <code>
这是一段代码
2. <kbd>
这段文字是从键盘上输入的
3. <samp>
提取某些短字符ae?w3school认为作用不大
4. <tt>
这段文字是从打字机上输入的
5. <strong><em>更要让人尖叫的强调
这是一段am

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jquery是继prototype之后又一个优秀的Javascrīpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。 目录 简介 找到你了! Jquery对象 代替body标签的onload 事件机制 同一函数实现get\set ajax 渐入淡出 plugin 历史版本 1、的事件.on() .off() 3、动画的改进 1.42版介绍 JQuery插件 让Dreamweaver支持提示代码功能 引入JQuery简介 找到你了! Jquery对象 代替body标签的onload 事件机制 同一函数实现get\set ajax 渐入淡出 plugin历史版本1、的事件.on() .off()3、动画的改进1.42版介绍JQuery插件让Dreamweaver支持提示代码功能引入JQuery展开编辑本段简介   jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多javascript高手加入其team,包括来自德国的Jörn Zaefferer,罗马尼亚的Stefan Petre等等。jQuery是继prototype之后又一个优秀的Javascrīpt框架。其宗旨是——WRITE LESS,DO MORE,写更少的代码,做更多的事情。   由于目前高校基本尚未开JavaScript的相关课程,目前jQuery的学习,使用,研究都仅限于在职Web程序员之间。   用jq的前提,首先要引用一个有jq的文件   [removed][removed]   这个是jquery官方最的地址。可用在自己网站里加个这个,就能使用jquery了。 但仍然建议下载到本地服务器上。 编辑本段找到你了!   在编写js库代码时候,你一定经常和“$”美元符号打交道吧?无论prototype还是DWR都使用了$代替频繁的document.getElementById()操作。jQuery也这样做了,但是,它的功能远非如此,瞧瞧以下的jQuery代码,你就会发现它的美丽:   代码   var someElement = $("#myId");   看起来比其他两个框架的要多了一个#,好,看看下面的用法:   代码   $("div p"); // (1)   $("div.container"); // (2)   $("div #msg"); // (3)   $("table a",context); // (4)   在prototype里看过这样的写法吗?第一行代码得到所有div标签下的p元素。第二行代码得到class 为container的div元素,第三行代码得到标签下面id为msg的div元素(不过最好别这样写,因为jQuery需要遍历所有的div元素,对于带id的元素,直接用$("#id"))。第四行代码得到context为上下文的table里面所有的链接元素。   如果你熟悉CSS,你会觉得这些写法很眼熟!对了。正是。看出奥妙了吧。jQuery就是如此强大,你可以轻易地找到DOM中的任何元素,而这也是jQuery设计之初query的真实含义(查询)。 编辑本段Jquery对象   jquery提供了很多便利的函数,如each(fn),但是使用这些函数的前提是:你使用的对象是Jquery对象。使一个Dom对象成为一个Jquery对象很简单,通过下面一些方式(只是一部分):   代码   var a = $("#cid");   var b = $("<p>hello</p>");   var c = document.createElement("table");   var tb = $(c); 编辑本段代替body标签的onload   这个惯例,也许是除了$()之外,用得最多的地方了。下面一段代码:   代码   $(document).ready(function(){   alert("hello");   });(1)   <body>(2)   <body>这里的alert('hello');要等到页面全部加载完毕才执行,注意是全部加载,包括dom,图片等其它资源。   而$(document).ready(function(){   alert("hello");   });(1)   当dom加载完就可以执行了。   代码1同时做到表现和逻辑分离。并且可以在不同的js文件中做相同的操作,即$(document).ready (fn)可以在一个页面中重复出现,而不会冲突。基本上Jquery的很多plugin都是利用这个特性,正因为这个特性,多个plugin共同使用起来,在初始化时不会发生冲突。   当使用jquery时,推荐使用代码1。 编辑本段事件机制   我们大量使用的事件可能就是button的onclick了。以前习惯在input 元素上写onclick = "fn()",使用jquery可以使javascrīpt代码与html代码分离,保持HTML的清洁,还可以很轻松地绑定事件,甚至你可以不知道“事件”这个名词。   代码   $(document).ready(function()   {   $("#clear").click(function(){   alert("i am about to clear the table");   });   $("form[12]").submit(validate);   });   function validate(){   //do some form validation   } 编辑本段同一函数实现get\set   代码   $("selector").load(url,data,function(response,status,xhr))   该方法是最简单的从服务器获取数据的方法。它几乎与 $.get(url, data, success) 等价,不同的是它不是全局函数,并且它拥有隐式的回调函数。当侦测到成功的响应时(比如,当 textStatus 为 "success" 或 "notmodified" 时),.load() 将匹配元素的 HTML 内容设置为返回的数据。这意味着该方法的大多数使用会非常简单。 编辑本段ajax   这是一个ajax横行的时代。多少人,了不了解ajax的都跟着用上一把。呵。使用jquery实现ajax同样异常简单   代码   (1)   $.get("search. do",{id:1},rend);   function rend(xml){   alert(xml);   }   (2)   $.post("search. do",{id:1},rend);   function rend(xml){   alert(xml);   }   (3)   $("#msg").ajaxStart(function(){   this.html("正在加载。。。。");   });   (4)   $("#msg").ajaxSuccess(function(){   this.html("加载完成!");   });   这些都是较常用的方法,get和post用法一样。第一个参数是异步请求的url,第二个为参数,第三个回调方法。   (4)的方法会在指定的Dom对象上绑定响应ajax执行的事件。   (5)同步加载数据。发送请求时锁住浏览器。需要锁定用户交互操作时使用同步方式。   var html = $.ajax({   url: "some.php",   async: false   }).responseText;   (6) 保存数据到服务器,成功时显示信息。   $.ajax({   type: "POST",   url: "some.php",   data: "name=John&location=Boston",   success: function(msg){   alert( "Data Saved: " + msg );   }   }); 编辑本段渐入淡出   代码   $("#msg").show("fast");   $("#msg").hide("slow");   $("#msg").fadeIn();   $("#msg").fadeOut();   没错,上面两行代码已经分别实现了一个id为Msg的jquery对象的渐入和淡出。做一个像Gmail一样的动态加载通知条,用jquery就那么简单。两个函数接受的参数除了快慢等,还可以接收整型,作为渐入或淡出的完成时间,单位为MS。 编辑本段plugin   这也是一个插件的时代。   jquery插件给我的感觉清一色的清洁,简单。如Jtip,要使用它的功能,只需要在你的元素的class上加上Jtip,并引入jtip.js及其样式即可以了。其他事情插件全包。我喜欢jquery的一个重要原因是发现她已经有了很多很好,很精彩的插件。   写得很烂。可能大家看不出jquery的好处。嗯,光听是没用的,试用一下吧。你会发觉很有趣。   暂时告一段落吧。待有的发现再来分享。   加一些Jquery的资源:   http://www.visualjquery. com/index.xml 很好的API查询站点   http://jquery. com/demo/thickbox/ 知道lightBox吧,看看Jquery是怎样实现相同的东西   http://jquery. org. cn/visual/cn/index.xml //不错的JQUERY 中文学习 推荐   微软的visual studio 2008 sp1支持对jquery的动态提示,只要在代码页导入对应的vsdoc脚本就可以。   目前为止,jQuery的最版本为1.7.2。 编辑本段历史版本   jQuery 1.0(2006年8月):该库的第一个稳定版本,已经具有了对CSS选择符、事件处理和AJAX交互的稳健支持。   jQuery 1.1(2007年1月):这一版大幅简化了API。许多较少使用的方法被合并,减少了需要掌握和解释的方法数量。   jQuery 1.1.3(2007年7月):这次小版本变化包含了对jQuery选择符引擎执行速度的显著提升。从这个版本开始,jQuery的性能达到了Prototype、Mootools以及Dojo等同类JavaScript库的水平。   jQuery 1.2(2007年9月):这一版去掉了对XPath选择符的支持,原因是相对于CSS语法它已经变得多余了。这一版能够支持对效果的更灵活定制,而且借助增的命名空间事件,也使插件开发变得更容易。   jQuery UI(2007年9月):这个的插件套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。jQuery UI中包含大量预定义好的部件(widget),以及一组用于构建高级元素(例如可拖放的界面元素)的工具。   jQuery 1.2.6(2008年5月):这一版主要是将Brandon Aaron开发的流行的Dimensions插件的功能移植到了核心库中。   jQuery 1.3(2009年1月):这一版使用了全的选择符引擎Sizzle,库的性能也因此有了极大提升。这一版正式支持事件委托特性。   jQuery 1.3.2(2009年2月):这次小版本升级进一步提升了库的性能,例如改进了:visible/:hidden选择符、.height()/.width()方法的底层处理机制。另外,也支持查询的元素按文档顺序返回。   jQuery 1.4(2010年1月14号对)代码库进行了内部重写组织,开始建立一些风格规范。老的core.js文件被分为attribute.js, css.js, data.js, manipulation.js, traversing.js和queue.js;CSS和attribute的逻辑分离。   jQuery 1.5(2011年1月31日):该版本修复了83个bug,解决了460个问题。重大改进有:重写了Ajax模块;增延缓对像(Deferred Objects);jQuery替身——jQuery.sub();增强了遍历相邻节点的性能;jQuery开发团队构建系统的改进。   1.4重要特性:   ·常用方法的性能大幅提升:重写了大部分较早期的函数;   ·更容易使用的设置函数(setter function):为所有对象增了许多易用的设置函数;   ·对Ajax的改进:引入了许多Ajax和JSON处理方面的更,包括HTML5元素的序列化;   ·attribute(改进了.attr()的性能)、jQuery()核心函数、CSS(.css()性能有两倍提升)、特效和事件、DOM操作等也有显著改进   1.5   美国时间1月31日John Resig在jQuery官方博客发表文章,宣布jQuery 1.5正式版已经如期开发完成,可以下载使用。压缩版本jQuery Minified29KB,不压缩版本jQuery Regular(用于阅读和调试)207KB。由于jQuery已经成为目前最流行的JavaScript库,得到广泛的支持,版本的发布当然非常引人注目。   重要变化:   1. Ajax重写Ajax模块完全进行了重写。增一个jXHR对象,为不同浏览器内置的XMLHttpRequest提供了一致的超集。对于XMLHttpRequest之外的传输机制,比如JSONP请求,jXHR对象也可以进行处理。(详情可以参见:jQuery.ajax文档)   此外,系统的可扩展性大大增强,可以附加各种数据处理器、过滤器和传输机制,为开发的Ajax插件提供了方便。   2. 延迟对象   延迟对象(Deferred Object,jQuery.Deferred对象)是一个可链接的(chainable)实用工具对象,实现了Promise接口,可以在回调队列中注册多个回调、调用回调队列并转发任何同步/异步函数的成败状态。正如Using Deferreds in jQuery 1.5一文中说明的,其结果是在jQuery中能够将依赖于某个任务(事件)结果的逻辑与任务本身解耦了。这一点在JavaScript中其实并不鲜,Mochikit和Dojo等已经实现有些日子了。由于jQuery 1.5的Ajax模块内置使用了延迟对象,因此现在通过jQuery编写Ajax程序将自动获得这一功能。   开发人员借此可以使用无法立即获得的返回值(如异步Ajax请求的返回结果),而且第一次能够附加多个事件处理器。   例如,使用了的jQuery内部Ajax API就可以实现下面的代码了:   // Assign handlers immediately after making the request, // and remember the jxhr object for this request var jxhr = $.ajax({ url: "example.php" }) .success(function() { alert("success"); }) .error(function() { alert("error"); }) .complete(function() { alert("complete"); });// perform other work here ... // Set another completion function for the request above jxhr.complete(function(){ alert("second complete"); });   此外,使用jQuery.Deferred还可以开发自己的延迟对象。更多详情参见:延迟对象文档。   3. jQuery.sub()   jQuery 1.5提供了一种创建和修改jQuery副本的方式。可以用来添加不向外部公开的方法,或者对jQuery的某些方法进行重定义以提供功能,或者提供更好的封装、避免名称空间冲突。当然,也可以用来开发插件,但Resig强烈建议在开发插件之前,先考虑jQuery UI widget工厂。   值得注意的是,sub函数并不提供真正的隔离,所有方法、数据、调用仍然依靠jQuery本身来支持。   4. 遍历性能提高   在版本中.children(), .pre(), .next()几个常用的遍历函数性能有了显著提高。   5. 内部开发系统   John Resig还特别提到了jQuery团队内部开发系统的两点改变:一是服务器端用Node.js替换了老的Java/Rhino系统,使得团队可以专注于JavaScript环境的变化;二是所用的代码优化程序从Google Closure切换到UglifyJS,工具的压缩效果非常令人满意。   有意思的是,此前UglifyJS开发者曾经公布过自己的测试结果,表明对jQuery的压缩结果UglifyJS要比Closure略大(都在72KB左右),但运行速度快得多,而且Closure不太安全。看来,这段时间UglifyJS的进展也很快啊。   jQuery 1.5.2 在1.5的基础上修正的大量的bug   1,7b   2011年09月29日jQuery 1.7 的第一个 beta 测试版本,该版本修复了超过 50 个的问题以及带来一些特性。   2011年11月-04日jQuery1.7正式版发布。    版本包含了很多的特征,特别提升了事件委派时的性能尤其是在IE7下。   增及改进项:   1. 的事件 APIs: .on() and .off();   2. 提升了事件委派时的性能有了大幅度的提升,尤其是在IE7下;   3. 更好的在 IE 6/7/8 上支持 HTML5;   4. 切换动画更加直观;   5. 匿名模块定义 AWD   6. jQuery.Deferred   7. jQuery.isNumeric()   被删除的方法:   event.layerX and event.layerY   jQuery.isNaN()   2012年03月24日jQuery 1.7.2正式版发布。    该版本在1.7.1的基础上修复了大量的bug,并改进了部分功能。而相比于1.7.2 RC1,只修复了一个bug。值得注意的是:如果你正在使用jQuery Mobile,请使用最的jQuery 1.7.2和jQuery Mobile 1.1这两个版本,因为之前的jQuery Mobile版本还基于jQuery core 1.7.1或更早的版本。 编辑本段1、的事件.on() .off()   旧的 API(jQuery 1.7之前) 的 API(jQuery 1.7) $(elems).bind(events, fn) $(elems).on(events, fn) $(elems).bind(events, { mydata: 42 }, fn) $(elems).on(events, { mydata: 42 }, fn) $(elems).unbind(events, fn) $(elems).off(events, fn) $(elems).delegate(events, selector, fn) $(elems).on(events, selector, fn) $(elems).undelegate(events, selector, fn) $(elems).off(events, selector, fn) $(selector).live(events, fn) $(document).on(events, selector, fn) $(selector).die(events, fn) $(document).off(events, selector, fn) 编辑本段3、动画的改进   在jQuery 1.7版之前,如果你在完成前停止动画,它可以创建的情况下被动画的元素永远不会返回到其全尺寸,它基本上停留在高度,这是停止动画时。 我们记住的原始尺寸固定,动画开始之前,让他们以后可以使用。 这消除了一大烦恼,尤其是在使用一定的动画切换的。 编辑本段1.42版介绍   jQuer1.4.2版本修复了1.4版本的一些错误和优化了一些不错的改进,速度比1.4.1版本又提升 了一倍,该版本对性能做了一些改进,同时增加了一些api ( .delegate() and .undelegate(). ),右图是JQuery各个版本的性能比较:   jquery1.42特性:   加了两个方法:.delegate() 和.undelegate(). 是对.live() and .die() 的补充. 这两个方法对特定的事件的起到简化。   范例:   $("table").delegate("td", "hover", function(){ $(this).toggleClass("hover"); });   等于使用 .live():   $("table").each(function(){ $("td", this).live("hover", function(){ $(this).toggleClass("hover"); }); });   另外,以下代码中,.live() 基本上等同于 .delegate().   $(document).delegate("td", "hover", function(){ $(this).toggleClass("hover"); });   变更   大量代码进行了重写, 提升了性能及修正了一些长期存在的问题。   提升性能   每次开发的jquery版本,我们都努力去持续优化性能,以保证你能用到最高性能的javascript代码。   在Taskspeed benchmark 的测试中,1.4.2比1.4.1快1倍,比1.3.2快2倍。   主要是在下面4个方面进行了提升:   .bind() 和 .unbind().   .empty(), .remove(), 和 .html().   插入单个DOM 节点到 document.   $("body")   在测试用例中,比较多的用到了 $("body"), .bind(), .unbind()方法,因此测试结果提升比较明显。   v重写事件   event handlers 不再作为一个对象属性保存在 jQuery的内部对象里。现在是保存在一个内部的对象数组里。v 现在可以通过调用.data("events") , 将会返回一个对象包含的所有事件类型。   现在可以使用不同的数据、命名空间、事件类型绑定在同一个handler   在一个handler清除自己之后,事件handler会继续执行   不用关联数据或者命名空间到事件handler   不用再使用代理方法   事件执行的顺序在所有浏览器中得到保证,Google Chrome 中出现的对象循环逻辑问题已经得到解决. 编辑本段JQuery插件   【基础】   a)样式   很 多人会认为样式是个很复杂的东西,需要沉着冷静的心态加上非凡的审美观才能设计出赏心悦目的UI,抛开图片设计不说,其实css也就是那么些属 性:position,margin,padding,width,height,left,top,float,border,background…   UI设计的漂亮与否在很大程度上依赖于设计人员对配色的把握和整体效果的协调。   b)脚本   我们同样需要对javascript有着深刻的理解,对dom, xhr, Regex, call-apply, prototype等都应该有一定的了解。   有人会说要这些有啥用啊,对dom的操作其实通过getElementById, getElementsByTagName以及其他的API都可以轻松的完成,这话是没错,当思路确定后,思想才是重点,一段代码是精华还是糟粕很容易就 可以区分出来,究其原因还是取决你自己   【实践】   jQuery开发或使用,更多的灵感是来自实践,而不是copy||paste(奉行拿来主义的同学可以离开了)。   那么在这里我会用一个简单的例子来阐述jQuery插件开发的流程,能否举一反三就看各位看官了。   【目的】   开发一个插件之前我们需要对自己的目的有一个清醒的认识,有很明确的方向感,那么此次我作为示例插件的目的,就是呈现一个用于UI的Slider – 滑动条,常年从事于或暂时专注于win32开发的同学应该比较了解。   【草图】   真正动手编码之前我们还需要有一个草图来描述自己插件的“长相”(事件驱动或API封装的可以忽略)。   很多的同学在做UI开发前往往会忙于搜集各种小图片(非精通ps或iconworkshop人士),其实漂亮的图标的确可以美化我们的UI,不过我一般的处理方式是编写易于扩展的css,前期的UI呈现尽量少使用图片,多用线条完成。   【编码】   开发jQuery UI/Effect 插件在很多时候都需要与UI交互,因此在呈现上需要提供Html tree来绘制我们的插件,最终通过js dom来输出,那么在绘制简单的dom结构的时候我会直接用js来完成,不过如果嵌套比较复杂的话,我们还是应该先用html来完成,然后转变成js输 出。   【扩展】   有的时候用户却不是那么容易满足,于是有人高呼:“我要自己设置value,为什么不提供这个功能?”。   那么这时我们就需要为用户公开一个方法,用于设置jSlider的value,首先考虑的是作为方法需要一个作用对象(jSlider),那么此时我又不 想将作用对象作为参数传入,那么我们还是将这个方法作为插件来开发,我们将方法命名为setSliderValue,开放2个参数,v(value值)和 callback(设置完成后的回调函数)。   【插件】   其实网上已经有成百上千种插件了,应该可以满足大家的需求了。   【小结】   通篇到这里就结束了,简单的介绍了一款jQuery插件的开发流程,以及开发中应该注意的细节,那么在下一篇的文章中我会向大家介绍如何打造一个通用型的 自动完成 插件。 编辑本段让Dreamweaver支持提示代码功能   要让Dreamweaver支持jQuery自动提示代码功能,方法很简单,下载一个插件—jQuery_API.mxp,以及cs4的jQuery语法提示插件 (详细步骤见参考资料 [1])。 在Dreamweaver里依次选择“命令” -> “扩展管理” -> “安装扩展” -> …,就会自动安装了。   成功后重启Dreamweaver,就大功告成了。 编辑本段引入JQuery   在head标签内加入这个 [removed][removed]   这里的src是你的jQuery库文件的位置,可以到jquery官网下载。   这样就引入了jquery,就可以使用了。在代码中,遇到$一般就表示用了jquery。为什么要说一般呢?因为除了jquery,javascript还有一个库,用的也是$符(property库)。   jquery也给出了在遇到这种情况的解决办法,所以jquery是个很强大、开放、友好的js库。   下面举例:   [removed]   $(document).ready(function(){   //write your code here   })   [removed]   上面代码中$(document).ready(function()中的$就是jquery的简写,可以用jquery代替。这个ready函数是在DOM就绪后发生,他比传统的javascript方法更合理。   jquery在选取节点方面非常强大,jquery有一系列的选择器可供使用,非常简洁、高效。   基本选择器(3种):   $("标签名"),如$("p")是选取了所有的p标签节点   $("#id名"),如$("#test")是选取了id为test的标签节点   $(".class名"),如$(".test")是选取了所有class为test的标签节点   上面的$("标签名")和$(".class名")返回的都是所有满足的节点,至于进一步筛选可以添加一些函数,如eq,gt,lt等等。    当然,jquery还有很多选择器
第一部分 深入理解DOM脚本编程  第1章 遵循最佳实践    1.1 不唐突和渐进增强    1.2 让JavaScript运行起来     1.2.1 把行为从结构中分离出来     1.2.2 不要版本检测     1.2.3 通过平稳退化保证可访问性     1.2.4 为重用命名空间而进行规划     1.2.5 通过可重用的对象把事情简化     1.2.6 一定要自己动手写代码    1.3 JavaScript语法中常见的陷阱     1.3.1 区分大小写     1.3.2 单引号与双引号      1.3.3 换行     1.3.4 可选的分号和花括号     1.3.5 重载(并非真正的重载)     1.3.6 匿名函数     1.3.7 作用域解析和闭包     1.3.8 迭代对象     1.3.9 函数的调用和引用(不带括号)    1.4 实例:WYSIWYGJavaScript翻转图    1.5 小结   第2章 创建可重用的对象    2.1 对象中包含什么     2.1.1 继承     2.1.2 理解对象成员     2.1.3 window对象中的一切     2.1.4 理解作用域和闭包是根本    2.2 创建你自己的对象     2.2.1 一变多:创建构造函数     2.2.2 添加静态方法     2.2.3 向原型中添加公有方法     2.2.4 公有、私有、特权和静态成员真那么重要吗     2.2.5 对象字面量    2.3 this是什么    2.4 try{}、catch{}和异常处理    2.5 实例:你自己的调试日志     2.5.1 为什么需要JavaScript日志对象     2.5.2 myLogger()对象    2.6 小结   第3章 DOM2核心和DOM2 HTML    3.1 DOM不是JavaScript,它是文档    3.2 DOM的级别     3.2.1 DOM 0 级     3.2.2 DOM 1 级     3.2.3 DOM 2 级     3.2.4 DOM 3 级     3.2.5 哪个级别适合你    3.3 创建示例文档     3.3.1 创建DOM文件     3.3.2 选择一个浏览器   3.4 DOM核心     3.4.1 继承在DOM中的重要性     3.4.2 核心Node对象     3.4.3 核心Element对象     3.4.4 核心Document对象     3.4.5 遍历和迭代DOM树    3.5 DOM HTML     3.5.1 DOM2 HTMLHTMLDocument对象     3.5.2 DOM2 HTMLHTMLElement对象    3.6 实例:将手工HTML代码转换为DOM代码     3.6.1 DOM生成工具的HTML文件     3.6.2 使用示例HTML片段进行测试     3.6.3 扩充ADS库     3.6.4 generateDOM对象的框架    3.7 小结   第4章 响应用户操作和事件    4.1 DOM2级事件    4.2 事件的类型     4.2.1 对象事件     4.2.2 鼠标移动事件     4.2.3 鼠标单击事件     4.2.4 键盘事件     4.2.5 表单相关的事件     4.2.6 针对W3C DOM的事件     4.2.7 自定义事件    4.3 控制事件流和注册事件侦听器     4.3.1 事件流     4.3.2 注册事件     4.3.3 在事件侦听器中访问事件对象     4.3.4 跨浏览器的事件属性和方法    4.4 小结   第5章 动态修改样式和层叠样式表    5.1 W3CDOM2样式规范     5.1.1 CSSStyleSheet对象     5.1.2 CSSStyleRule对象     5.1.3 CSSStyleDeclaration对象     5.1.4 支持的匮乏    5.2 当DOM 脚本遇到样式    5.3 把样式置于DOM脚本之外     5.3.1 style属性     5.3.2 基于className切换样式     5.3.3 切换样式表     5.3.4 修改CSS规则    5.4 访问计算样式    5.5 Microsoft的filter属性    5.6 实例:简单的渐变效果    5.7 小结   第6章 案例研究:图像裁剪和缩放工具    6.1 测试文件    6.2 imageEditor对象     6.2.1 调用imageEditor工具     6.2.2 imageEditor载入事件     6.2.3 创建编辑器标记和对象     6.2.4 向imageEditor对象添加事件侦听器     6.2.5 缩放图像     6.2.6 裁剪图像     6.2.7 未完成的图像编辑器    6.3 小结  第二部分 浏览器外部通信  第7章 向应用程序中加入Ajax    7.1 组合的技术     7.1.1 语义化XHTML和DOM     7.1.2 JavaScript和XMLHttpRequest对象     7.1.3 XML     7.1.4 一个可重用的对象     7.1.5 Ajax是正确的选择吗    7.2 为什么Ajax会破坏网站及如何解决     7.2.1 依赖JavaScript生成内容     7.2.2 通过script标签绕过跨站点限制     7.2.3 后退按钮和书签功能     7.2.4 完成请求的赛跑     7.2.5 增加资源占用     7.2.6 问题解决了吗    7.3 实例:Ajax增强的相册    7.4 小结   第8章 案例研究:实现带进度条的异步文件上传功能    8.1 信息载入时的小生命    8.2 起点    8.3 完成整合:上传进度指示器     8.3.1 addProgressBar()对象的结构     8.3.2 载入事件     8.3.3 addProgressBar()对象    8.4 小结  第三部分 部分高级脚本编程资源  第9章 通过库来提高生产力    9.1 选择合适的库    9.2 增强DOM操作能力     9.2.1 连缀语法     9.2.2 通过回调函数进行过滤     9.2.3 操纵DOM文档    9.3 处理事件     9.3.1 注册事件     9.3.2 自定义事件    9.4 访问和操纵样式    9.5 通信    9.6 小结   第10章 添加效果增强用户体验    10.1 自己动手实现效果     10.1.1 让我看到内容     10.1.2 提供反馈    10.2 几个视觉效果库简介    10.3 视觉盛宴     10.3.1 MOO式的CSS属性修改     10.3.2 通过Script.aculo.us实现视觉效果     10.3.3 通过Moo.fx实现逼真的运动效果     10.3.4 圆角效果     10.3.5 其他库    10.4 行为增强    10.5 小结   第11章 丰富的Mashup!运用API添加地图、搜索及更多功能    11.1 API密钥    11.2 客户端API:离不开JavaScript     11.2.1 地图中的Mashup应用     11.2.2 Ajax搜索请求     11.2.3 地图与搜索的Mashup应用    11.3 服务器端API:需要代理脚本     11.3.1 通过Basecamp构建集成的To-Do列表     11.3.2 通过Flickr取得个性头像    11.4 小结   第12章 案例研究:用DOM设计选择列表    12.1 经典的感觉    12.2 构建更好的选择列表    12.3 策略?我们不需要臭哄哄的策略     12.3.1 相关的文件     12.3.2 FauxSelect对象     12.3.3 开始创建人造select元素     12.3.4 查找select元素     12.3.5 构建DOM元素    12.4 添加事件——为人造select赋予生命    12.5 让表单绽放光彩    12.6 行为修正     12.6.1 z-index来救急     12.6.2 键盘控制及其他细节     12.6.3 select太大了吗    12.7 最后的细节    12.8 继续替换select的冒险    12.9 小结
第一部分 深入理解DOM脚本编程  第1章 遵循最佳实践    1.1 不唐突和渐进增强    1.2 让JavaScript运行起来     1.2.1 把行为从结构中分离出来     1.2.2 不要版本检测     1.2.3 通过平稳退化保证可访问性     1.2.4 为重用命名空间而进行规划     1.2.5 通过可重用的对象把事情简化     1.2.6 一定要自己动手写代码    1.3 JavaScript语法中常见的陷阱     1.3.1 区分大小写     1.3.2 单引号与双引号      1.3.3 换行     1.3.4 可选的分号和花括号     1.3.5 重载(并非真正的重载)     1.3.6 匿名函数     1.3.7 作用域解析和闭包     1.3.8 迭代对象     1.3.9 函数的调用和引用(不带括号)    1.4 实例:WYSIWYGJavaScript翻转图    1.5 小结   第2章 创建可重用的对象    2.1 对象中包含什么     2.1.1 继承     2.1.2 理解对象成员     2.1.3 window对象中的一切     2.1.4 理解作用域和闭包是根本    2.2 创建你自己的对象     2.2.1 一变多:创建构造函数     2.2.2 添加静态方法     2.2.3 向原型中添加公有方法     2.2.4 公有、私有、特权和静态成员真那么重要吗     2.2.5 对象字面量    2.3 this是什么    2.4 try{}、catch{}和异常处理    2.5 实例:你自己的调试日志     2.5.1 为什么需要JavaScript日志对象     2.5.2 myLogger()对象    2.6 小结   第3章 DOM2核心和DOM2 HTML    3.1 DOM不是JavaScript,它是文档    3.2 DOM的级别     3.2.1 DOM 0 级     3.2.2 DOM 1 级     3.2.3 DOM 2 级     3.2.4 DOM 3 级     3.2.5 哪个级别适合你    3.3 创建示例文档     3.3.1 创建DOM文件     3.3.2 选择一个浏览器   3.4 DOM核心     3.4.1 继承在DOM中的重要性     3.4.2 核心Node对象     3.4.3 核心Element对象     3.4.4 核心Document对象     3.4.5 遍历和迭代DOM树    3.5 DOM HTML     3.5.1 DOM2 HTMLHTMLDocument对象     3.5.2 DOM2 HTMLHTMLElement对象    3.6 实例:将手工HTML代码转换为DOM代码     3.6.1 DOM生成工具的HTML文件     3.6.2 使用示例HTML片段进行测试     3.6.3 扩充ADS库     3.6.4 generateDOM对象的框架    3.7 小结   第4章 响应用户操作和事件    4.1 DOM2级事件    4.2 事件的类型     4.2.1 对象事件     4.2.2 鼠标移动事件     4.2.3 鼠标单击事件     4.2.4 键盘事件     4.2.5 表单相关的事件     4.2.6 针对W3C DOM的事件     4.2.7 自定义事件    4.3 控制事件流和注册事件侦听器     4.3.1 事件流     4.3.2 注册事件     4.3.3 在事件侦听器中访问事件对象     4.3.4 跨浏览器的事件属性和方法    4.4 小结   第5章 动态修改样式和层叠样式表    5.1 W3CDOM2样式规范     5.1.1 CSSStyleSheet对象     5.1.2 CSSStyleRule对象     5.1.3 CSSStyleDeclaration对象     5.1.4 支持的匮乏    5.2 当DOM 脚本遇到样式    5.3 把样式置于DOM脚本之外     5.3.1 style属性     5.3.2 基于className切换样式     5.3.3 切换样式表     5.3.4 修改CSS规则    5.4 访问计算样式    5.5 Microsoft的filter属性    5.6 实例:简单的渐变效果    5.7 小结   第6章 案例研究:图像裁剪和缩放工具    6.1 测试文件    6.2 imageEditor对象     6.2.1 调用imageEditor工具     6.2.2 imageEditor载入事件     6.2.3 创建编辑器标记和对象     6.2.4 向imageEditor对象添加事件侦听器     6.2.5 缩放图像     6.2.6 裁剪图像     6.2.7 未完成的图像编辑器    6.3 小结  第二部分 浏览器外部通信  第7章 向应用程序中加入Ajax    7.1 组合的技术     7.1.1 语义化XHTML和DOM     7.1.2 JavaScript和XMLHttpRequest对象     7.1.3 XML     7.1.4 一个可重用的对象     7.1.5 Ajax是正确的选择吗    7.2 为什么Ajax会破坏网站及如何解决     7.2.1 依赖JavaScript生成内容     7.2.2 通过script标签绕过跨站点限制     7.2.3 后退按钮和书签功能     7.2.4 完成请求的赛跑     7.2.5 增加资源占用     7.2.6 问题解决了吗    7.3 实例:Ajax增强的相册    7.4 小结   第8章 案例研究:实现带进度条的异步文件上传功能    8.1 信息载入时的小生命    8.2 起点    8.3 完成整合:上传进度指示器     8.3.1 addProgressBar()对象的结构     8.3.2 载入事件     8.3.3 addProgressBar()对象    8.4 小结  第三部分 部分高级脚本编程资源  第9章 通过库来提高生产力    9.1 选择合适的库    9.2 增强DOM操作能力     9.2.1 连缀语法     9.2.2 通过回调函数进行过滤     9.2.3 操纵DOM文档    9.3 处理事件     9.3.1 注册事件     9.3.2 自定义事件    9.4 访问和操纵样式    9.5 通信    9.6 小结   第10章 添加效果增强用户体验    10.1 自己动手实现效果     10.1.1 让我看到内容     10.1.2 提供反馈    10.2 几个视觉效果库简介    10.3 视觉盛宴     10.3.1 MOO式的CSS属性修改     10.3.2 通过Script.aculo.us实现视觉效果     10.3.3 通过Moo.fx实现逼真的运动效果     10.3.4 圆角效果     10.3.5 其他库    10.4 行为增强    10.5 小结   第11章 丰富的Mashup!运用API添加地图、搜索及更多功能    11.1 API密钥    11.2 客户端API:离不开JavaScript     11.2.1 地图中的Mashup应用     11.2.2 Ajax搜索请求     11.2.3 地图与搜索的Mashup应用    11.3 服务器端API:需要代理脚本     11.3.1 通过Basecamp构建集成的To-Do列表     11.3.2 通过Flickr取得个性头像    11.4 小结   第12章 案例研究:用DOM设计选择列表    12.1 经典的感觉    12.2 构建更好的选择列表    12.3 策略?我们不需要臭哄哄的策略     12.3.1 相关的文件     12.3.2 FauxSelect对象     12.3.3 开始创建人造select元素     12.3.4 查找select元素     12.3.5 构建DOM元素    12.4 添加事件——为人造select赋予生命    12.5 让表单绽放光彩    12.6 行为修正     12.6.1 z-index来救急     12.6.2 键盘控制及其他细节     12.6.3 select太大了吗    12.7 最后的细节    12.8 继续替换select的冒险    12.9 小结
第一部分 深入理解DOM脚本编程  第1章 遵循最佳实践    1.1 不唐突和渐进增强    1.2 让JavaScript运行起来     1.2.1 把行为从结构中分离出来     1.2.2 不要版本检测     1.2.3 通过平稳退化保证可访问性     1.2.4 为重用命名空间而进行规划     1.2.5 通过可重用的对象把事情简化     1.2.6 一定要自己动手写代码    1.3 JavaScript语法中常见的陷阱     1.3.1 区分大小写     1.3.2 单引号与双引号      1.3.3 换行     1.3.4 可选的分号和花括号     1.3.5 重载(并非真正的重载)     1.3.6 匿名函数     1.3.7 作用域解析和闭包     1.3.8 迭代对象     1.3.9 函数的调用和引用(不带括号)    1.4 实例:WYSIWYGJavaScript翻转图    1.5 小结   第2章 创建可重用的对象    2.1 对象中包含什么     2.1.1 继承     2.1.2 理解对象成员     2.1.3 window对象中的一切     2.1.4 理解作用域和闭包是根本    2.2 创建你自己的对象     2.2.1 一变多:创建构造函数     2.2.2 添加静态方法     2.2.3 向原型中添加公有方法     2.2.4 公有、私有、特权和静态成员真那么重要吗     2.2.5 对象字面量    2.3 this是什么    2.4 try{}、catch{}和异常处理    2.5 实例:你自己的调试日志     2.5.1 为什么需要JavaScript日志对象     2.5.2 myLogger()对象    2.6 小结   第3章 DOM2核心和DOM2 HTML    3.1 DOM不是JavaScript,它是文档    3.2 DOM的级别     3.2.1 DOM 0 级     3.2.2 DOM 1 级     3.2.3 DOM 2 级     3.2.4 DOM 3 级     3.2.5 哪个级别适合你    3.3 创建示例文档     3.3.1 创建DOM文件     3.3.2 选择一个浏览器   3.4 DOM核心     3.4.1 继承在DOM中的重要性     3.4.2 核心Node对象     3.4.3 核心Element对象     3.4.4 核心Document对象     3.4.5 遍历和迭代DOM树    3.5 DOM HTML     3.5.1 DOM2 HTMLHTMLDocument对象     3.5.2 DOM2 HTMLHTMLElement对象    3.6 实例:将手工HTML代码转换为DOM代码     3.6.1 DOM生成工具的HTML文件     3.6.2 使用示例HTML片段进行测试     3.6.3 扩充ADS库     3.6.4 generateDOM对象的框架    3.7 小结   第4章 响应用户操作和事件    4.1 DOM2级事件    4.2 事件的类型     4.2.1 对象事件     4.2.2 鼠标移动事件     4.2.3 鼠标单击事件     4.2.4 键盘事件     4.2.5 表单相关的事件     4.2.6 针对W3C DOM的事件     4.2.7 自定义事件    4.3 控制事件流和注册事件侦听器     4.3.1 事件流     4.3.2 注册事件     4.3.3 在事件侦听器中访问事件对象     4.3.4 跨浏览器的事件属性和方法    4.4 小结   第5章 动态修改样式和层叠样式表    5.1 W3CDOM2样式规范     5.1.1 CSSStyleSheet对象     5.1.2 CSSStyleRule对象     5.1.3 CSSStyleDeclaration对象     5.1.4 支持的匮乏    5.2 当DOM 脚本遇到样式    5.3 把样式置于DOM脚本之外     5.3.1 style属性     5.3.2 基于className切换样式     5.3.3 切换样式表     5.3.4 修改CSS规则    5.4 访问计算样式    5.5 Microsoft的filter属性    5.6 实例:简单的渐变效果    5.7 小结   第6章 案例研究:图像裁剪和缩放工具    6.1 测试文件    6.2 imageEditor对象     6.2.1 调用imageEditor工具     6.2.2 imageEditor载入事件     6.2.3 创建编辑器标记和对象     6.2.4 向imageEditor对象添加事件侦听器     6.2.5 缩放图像     6.2.6 裁剪图像     6.2.7 未完成的图像编辑器    6.3 小结  第二部分 浏览器外部通信  第7章 向应用程序中加入Ajax    7.1 组合的技术     7.1.1 语义化XHTML和DOM     7.1.2 JavaScript和XMLHttpRequest对象     7.1.3 XML     7.1.4 一个可重用的对象     7.1.5 Ajax是正确的选择吗    7.2 为什么Ajax会破坏网站及如何解决     7.2.1 依赖JavaScript生成内容     7.2.2 通过script标签绕过跨站点限制     7.2.3 后退按钮和书签功能     7.2.4 完成请求的赛跑     7.2.5 增加资源占用     7.2.6 问题解决了吗    7.3 实例:Ajax增强的相册    7.4 小结   第8章 案例研究:实现带进度条的异步文件上传功能    8.1 信息载入时的小生命    8.2 起点    8.3 完成整合:上传进度指示器     8.3.1 addProgressBar()对象的结构     8.3.2 载入事件     8.3.3 addProgressBar()对象    8.4 小结  第三部分 部分高级脚本编程资源  第9章 通过库来提高生产力    9.1 选择合适的库    9.2 增强DOM操作能力     9.2.1 连缀语法     9.2.2 通过回调函数进行过滤     9.2.3 操纵DOM文档    9.3 处理事件     9.3.1 注册事件     9.3.2 自定义事件    9.4 访问和操纵样式    9.5 通信    9.6 小结   第10章 添加效果增强用户体验    10.1 自己动手实现效果     10.1.1 让我看到内容     10.1.2 提供反馈    10.2 几个视觉效果库简介    10.3 视觉盛宴     10.3.1 MOO式的CSS属性修改     10.3.2 通过Script.aculo.us实现视觉效果     10.3.3 通过Moo.fx实现逼真的运动效果     10.3.4 圆角效果     10.3.5 其他库    10.4 行为增强    10.5 小结   第11章 丰富的Mashup!运用API添加地图、搜索及更多功能    11.1 API密钥    11.2 客户端API:离不开JavaScript     11.2.1 地图中的Mashup应用     11.2.2 Ajax搜索请求     11.2.3 地图与搜索的Mashup应用    11.3 服务器端API:需要代理脚本     11.3.1 通过Basecamp构建集成的To-Do列表     11.3.2 通过Flickr取得个性头像    11.4 小结   第12章 案例研究:用DOM设计选择列表    12.1 经典的感觉    12.2 构建更好的选择列表    12.3 策略?我们不需要臭哄哄的策略     12.3.1 相关的文件     12.3.2 FauxSelect对象     12.3.3 开始创建人造select元素     12.3.4 查找select元素     12.3.5 构建DOM元素    12.4 添加事件——为人造select赋予生命    12.5 让表单绽放光彩    12.6 行为修正     12.6.1 z-index来救急     12.6.2 键盘控制及其他细节     12.6.3 select太大了吗    12.7 最后的细节    12.8 继续替换select的冒险    12.9 小结
3GCMS是一个免费开源的,快速、简单的面向智能手机等移动终端的网站CMS系统,自动生成手机安装包APK.并提供终端消息推送,手机版后台管理等功能。 3GCMS PHP版 2.0 功能更: 1:修正手机版第一次进入无样式需刷才能看到效果的缺陷 2:自定义字段默认值 支持PHP代码 3:修正后台配置文件错误 4:增加网站RSS订阅接口 方便站长发布,其RSS地址:http://3gcms安装完整路径/index.php?s=/Public_rss.html 5:可视化APK的启动界面和ICON配置 6:美化后台管理界面 7:vip版APK功能增强,具备一键营销\产品随手拍\实时接单\地图定位\派单\终端广告推送等能力. 3GCMS提供从服务器端网站到手机客户端以及客户端管理一整套的解决方案。你不需要会安卓开发,不需要对响应式网站布局有极强的理解。保持和你以前的网站建设开发习惯。简单快捷的建立手机网站。极大的降低了手机网站建设的技术投入和开发成本。 3GCMS ASP发布后,受到需多中小企建站的用户好评。考虑到ASP的局限性。我们开发了PHP版本的3GCMS。功能更完善,操作更方便。 1、3GCMS PHP版前后台分离,前台显示采用模板分离的方式,精选继承了主流CMS的各项优点。 2、能够自动分辨用户来源,对PC、手机、IPAD等各类终端访问进行自适应,使其具有良好的用户体验。 3、PC端模板保持传统PC网站开发方式,开发者可以根据自己的习惯开发设计模板。 4、手机端模板采用移动互联网中HTML5应用主流框架jquery mobile,我们制作示例性的移动网站模板。你可以根据你的设计要求进行修改。 5、PC端模板和手机端模板共用一个后台。一次性开发,就完成了一个PC站,一个手机站。 6、3GCMS官网提供了一键生成APK。网站开发完成后,只需要输入你的网址,就可以生成安智客户端程序APK。 7、提供基于手机上使用的中小企业网站营销管理功能。包括:跨平台云消息推送、订单消息提醒、产品拍照一键发布等(详见3GCMS官网说明) 一、3gcms_php特点 1:扩展字段自定义,根据自己系统需要无限扩展字段 2:后台栏目分类无限级,并可以控制字段的显示或隐藏,方便管理 3:列表模板(list目录下)和详细模板(page目录下)自定义 4:基于thinkphp框架开发(官网www.thinkphp.cn), 内置大量函数方便前台调用模板调用标签请参看tp官网 5:作站灵活可以将该系统做成任何类型网站,内置闻类型站、企业站、手机3g站模型,通过http://***安装目录****/?t=xinwen这种查看,方便二次开发出不同模板 二、3gcms_php使用说明 1、将下载的文件3gcms_PHP.rar。解压、用FTP上传到你的网站空间中 2、3GCMS支持根目录和子目录。建议放置于根目录,如果你的网站空间已有网站,可以建一个子目录,将文件解压到子目录中。 3、导入数据库:建数据库并导入执行Data目录3gcms_php.sql 4、更改配置文件Public\Config\config.ini.php 数据库连接信息 5: 输入地址:http://***安装目录****/admin.php进入后台管理    超级管理员:对网站系统信息和基础信息进行配置  用户名:admin  密  码:admin888 6、输入http://***安装目录****/?t=w3g 查看3G网站,建议采用手机查看,或使用支持HTML5的浏览器。 三、3GCMS网站安卓APK在线生成使用说明 1、使用3GCMS服务端完成3G网站建议。(查见3GCMS服务器端安装使用说明) 2、输入网址:  进入3GCMS网站安卓APK在线生成页面。 3、在输入框中输入要生成APK的网站网址。 4、单击预览,在右边的手机预览处,查看手机预览效果。(这一步可选) 5、单击按钮“开始生成APK”。根据页面提示,得到生成的APK。 6、记录APK的下载地址。在手机上下载APK,并进行安装。 7、点击导航菜单“下载”,在搜索框中输入网站网址。搜索

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值