jQuery中的&& ||

今天给大家介绍一些亚马逊上畅销的JavaScript &
jQuery方面的书籍。它们固然都来自国外的作者之笔,

jQuery1.2.6
clean方法中有这么一段第一眼看去会让人晕掉的方法。完全不知其所言。 
“||, && 可以这样用?”,“这段东西最终返回的是个什么对象啊?” 
// Trim whitespace, otherwise indexOf won’t work as expected 
var tags = jQuery.trim( elem ).toLowerCase(), div =
context.createElement(“div”); 

1、逻辑非

iDrag & iDialog 介绍

摘要:虽然经常安装操作系统,但你有没有想过,操作系统安装的时候都做了哪些工作?系统安装的本质是什么?在操作系统安装之前,系统是怎么从裸机上起来的?等等问题。本文主要以Centos系列的linux为例,向你详细解释操作系统安装的详细过程,引导程序,系统内核,livecd,installer等的区别和联系。本文主要为你解答这些问题

不过这些技术对于对于我们来说并不陌生,想学习JavaScript &
jQuery的朋友,如果英文不是问题,不妨看看。

var wrap = 
// option or optgroup 
!tags.indexOf(“<opt”) && 
[ 1, “<select multiple=’multiple’>”, “</select>” ] || 

逻辑非用!表示,可以应用与ECMAScript的任何类型的值,逻辑非操作返回的是一个布尔值(true/false)。该操作符首先会将它的操作数转换为一个布尔值,然后再对其求反。

特点:

1.发行版本中包含的文件

首先,我们来看一下一个传统的发行版本linux中会包含哪些文件(一个linux发行版CD,本文是centos):

[[email protected] CentosInstall]$ ls
CentOS_BuildTag  EULA  images    Packages                  repodata              RPM-GPG-KEY-CentOS-Debug-6     RPM-GPG-KEY-CentOS-Testing-6
EFI              GPL   isolinux  RELEASE-NOTES-en-US.html  RPM-GPG-KEY-CentOS-6  RPM-GPG-KEY-CentOS-Security-6  TRANS.TBL

大部分都是与需要安装的软件包有关的信息,其中,在安装过程中起关键作用的主要有两个目录:images和isolinux,我们来看一下这两个目录中的内容:

isolinux目录的内容:

-r--r--r--. 1 root root     2048 7月   6 2012 boot.cat
-r--r--r--. 2 root root       84 7月   6 2012 boot.msg
-r--r--r--. 2 root root      334 7月   6 2012 grub.conf
-r--r--r--. 4 root root 31596586 7月   6 2012 initrd.img
-r--r--r--. 2 root root    24576 7月   6 2012 isolinux.bin
-r--r--r--. 2 root root      936 7月   6 2012 isolinux.cfg
-r--r--r--. 2 root root   165080 7月   6 2012 memtest
-r--r--r--. 2 root root   151230 7月   6 2012 splash.jpg
-r--r--r--. 1 root root     2215 7月   6 2012 TRANS.TBL
-r--r--r--. 2 root root   162860 7月   6 2012 vesamenu.c32
-r-xr-xr-x. 4 root root  3986608 7月   6 2012 vmlinuz

其中,isolinux.bin引导程序,负责将操作系统内核加载到内存,isolinux.cfg是isolinux.bin将会读取的配置文件

grub.conf是grub读取的配置文件,grub也是引导程序

mmtest和vmlinuz等是可以启动的系统内核,initrd.img是初始化所用的磁盘镜像,里面包含一个最小化的系统,包含了/dev,/etc,/bin等很多基本的目录,还有关键的init程序,负责驱动的加载和文件系统的初始化。

images目录的内容:

-r--r--r--. 2 root root    372736 7月   6 2012 efiboot.img
-r--r--r--. 2 root root  35997696 7月   6 2012 efidisk.img
-r--r--r--. 2 root root 136585216 7月   6 2012 install.img
dr-xr-xr-x. 2 root root      2048 7月   6 2012 pxeboot
-r--r--r--. 1 root root       888 7月   6 2012 TRANS.TBL

其中,最重要的是引导第二阶段安装需要用到的镜像文件install.img(rhel
5中是stage2.img),anaconda程序就在这个镜像文件中。

另外,如果想详细的了解安装文件中每个文件的作用,可以参考这里:

它们绝大部分可以从  免费下载电子版!

!tags.indexOf(“<leg”) && 
[ 1, “<fieldset>”, “</fieldset>” ] || 

下面说明下Boolean()转型函数的一组规则。

iDialog.js依赖于jquery编写的简单易用的对话框,同时还可以通过添加css3,改变对话框的展现动画。
提供了两个方法:

2.install.img内容分析

先用file命令查看install.img的文件系统类型,可知是suqashfs,用mount -o
loop -t squashfs install.img ./img/的方式挂载出来。内容如下:

etc  firmware  lib  lib64  modules  proc  usr  var

由此可见,这也基本上是文件系统中重要文件的磁盘镜像:

除了主执行体/usr/bin/anaconda,其它安装脚本模块均在/usr/lib/anaconda主目录下。我们看一下整个anaconda主目录的结构:
/usr/bin/anaconda: 主程序,是python脚本。
/usr/lib/anaconda/installclasses:定义了在安装过程中用户可选择的安装类型。每个安装类型描述文件根据相应安装类型的特点,分别对安装步骤、分区策略以及安装包的取舍给出了不同的方案。里面有两个文件fedora.py和rhel.py,分别针对fedora和rhel的安装类型。其他的Linux发行版可以定义它们自己的安装类型。
/usr/lib/anaconda/iw:图形安装模式的模块。包含所有图形界面类所在的模块,每个图形界面对应一个类,负责相应安装步骤图形界面的具体外观显示及与用户的交互,(可能)调用anaconda主目录下的相关安装行为模块完成具体的安装操作。
/usr/lib/anaconda/storage:存储配置的响应目录(如分区,FCOE, iSCSI, RAID,
ZFCP的配置等)。
/usr/lib/anaconda/textw:文本安装模式的模块。和iw子目录含义是一致的,只是包含的是文本安装模式的前端字符用户界面类所在的模块,每个字符用户界面对应一个类,负责与用户的交互,字符界面的采用了python的snack库。
/usr/lib/anaconda-runtime:
有init和loader程序。这是两个静态编译的程序,不依赖其他库,就是编译anaconda源代码目录下的loader目录下的C代码得到。这两个程序会放在最后用来启动安装过程的Linux
initrd image里面。
/usr/anaconda主目录:如果说用户界面类是处理安装程序外观的话,则anaconda主目录下的各python模块执行每个安装界面背后具体的安装行为,包括那些无用户界面安装步骤的安装操作。
由此可见,主执行体/usr/bin/anaconda调用的大量例程分布在/usr/lib/anaconda目录下,安装过程要用到的资源文件(例如背景图片)则分布在/usr/share/anaconda目录下。Python的许多内置模块则在目录/usr/lib/pythonXX下,其中XX指版本号。
上面分析的是已经编译好的anaconda目录结构,现在概览一下anaconda源代码包的结构。Anaconda主要用Python编写,图形界面前端用pyGtk库(参考

Learning jQuery Book – More Info

图片 1
This is the third edition of the book and you can find it both as a
paperback and as a Kindle version. All concepts of the jQuery library is
presented separately, in a beginner and then in an advanced manner.

tags.match(/^<(thead|tbody|tfoot|colg|cap)/) && 
[ 1, “<table>”, “</table>” ] || 

数据类型 转换为true的值 转换为false的值
Boolean true false
String   任何非空字符串 ""(空字符串)
Number  任何非零数字值(包括无穷大) 0和NaN
Object 任何对象 null
Undefined  无 undefined

 

3.linux系统安装过程分析:

需要知道,安装程序只是一个普通的用户程序,安装程序在能够运行之前,必须要启动操作系统才行,而这个时候,物理硬盘上尚且没有操作系统。

所以,一个安装光盘里,需要有引导程序(负责将操作系统内核和initrd.img加载到内存),操作系统内核和initrd(负责程序运行环境的构建)。另外,如果是一个安装光盘,那么需要有安装程序;如果是livecd,需要有live磁盘镜像。也就是说,需要有已经安装的操作系统磁盘镜像,这就是img文件。从理论上说,操作系统的安装过程和启动过程在前几步是完全相同的。

系统安装过程如下:

启动操作系统内核——加载initrd.img——运行初始化程序——根据初始化initrd中init程序的内容,决定是启动livecd还是ananconda来运行安装程序;如果是livecd,那么里面如果有installer程序,可以手动开启installer程序来安装操作系统,注意,此时调用ananconda等程序来安装操作系统,是用户行为,不是系统子自发的行为,已经没有操作系统的引导过程了(因为操作系统已经起来了)。

POST加电自检–>BIOS(Boot
Sequence)–>加载对应引导上的MBR(bootloader)–>主引导设置加载其BootLoader–>Kernel初始化–>initrd—>/etc/init进程加载/etc/inittab。

由于传统的安装过程是ananconda控制的,而ananconda又会执行kickstart的配置文件,所以,我们有必要来了解一下kickstart的配置文件语法和大体框架:

line1~line6:基本配置:

Line  
1  lang en_US.UTF-8
2  keyboard us
3  timezone US/Eastern
4  auth --useshadow --enablemd5
5  selinux --enforcing
6  firewall --disabled

line8~11软件源配置:

Line 
8  repo --name=a-base    --baseurl=http://mirror.centos.org/centos/5/os/$basearch
9  repo --name=a-updates --baseurl=http://mirror.centos.org/centos/5/updates/$basearch
10  #repo --name=a-extras  --baseurl=http://mirror.centos.org/centos/5/extras/$basearch
11  repo --name=a-live    --baseurl=http://www.nanotechnologies.qc.ca/propos/linux/centos-live/$basearch/live

软件包清单:

%packages
syslinux
kernel

@admin-tools
#packages removed from @admin-tools
-sabayon
-system-config-kdump
#@admin-tools <end of package list>

@base
#package added to @base
squashfs-tools
#packages removed from @base
-amtu
-bind-utils

注意,其中admin-tools是一些列软件,“减号”表示在在一些列软件里需要除去什么软件。

【安装后需要执行的shell脚本】

241 %post
242
243 #!/bin/bash
244 #
245
246 # FIXME: it’d be better to get this installed from a package
247 cat > /etc/rc.d/init.d/centos-live << EOF_initscript
248 #!/bin/bash
249 #
250 # live: Init script for live image
251 #
252 # chkconfig: 345 00 99
253 # description: Init script for live image.
254
255 . /etc/init.d/functions

注明: 你可以在/root/post-install找到该脚本.
这个脚本执行后的日志放在/root/post-install.log.当你从livecd启动之后,你能够重新审视这些脚本文件。

jQuery Compressed Learning Book – More Info

图片 2
As the name might suggest, this is the kindle version of the book and it
has about 150 pages. This is the second edition of the book and it deals
with jQuery 1.10.1 and 2.0.2 versions.

!tags.indexOf(“<tr”) && 
[ 2, “<table><tbody>”, “</tbody></table>” ]
|| 

Boolean()转型函数的简便表示方法。———–!!

1、拖拽函数 iDrag() 或 $.drag();

4.关于系统引导的疑问:

我们 4.1关于kernel,也就是vmlinuz:

kernel初始化所要工作的内容做下简单总结:

探测硬件->加载驱动(在initrd之中)->挂载根文件系统(initrd镜像中的init脚本完成)->rootfs(/sbin/init)

vmlinux是很小的,仅仅包含一些最基本的东西,不包含驱动程序,大概只有4M

驱动程序在initrd之中,我们也可以把驱动坐在vmlinuz中,但是由于存放vmlinuz的设备多种多样,所以需要编入内核的驱动也有很多,会造成内核臃肿,所以产生了initrd文件,引导程序初始化ramdisk,解决驱动多样问题。

4.2initrd与initramfs有什么去别?

ramfs是一种非常简单的文件系统,它直接利用linux内核已有的高速缓存机制(所以其实现代码很小,也由于这个原因,ramfs特性不能通过内核配置参数屏蔽,它是内核的天然属性),使用系统的物理内存,做成一个大小可以动态变化的的基于内存的文件系统。大小大概是16M

在早期的linux系统中,一般只有硬盘或者软盘被用来作为linux根文件系统的存储设备,因此也就很容易把这些设备的驱动程序集成到内核中。但是现在的嵌入式系统中可能将根文件系统保存到各种存储设备上,包括scsi、sata,u-disk等等。因此把这些设备的驱动代码全部编译到内核中显然就不是很方便。大小大概是4M

4.3安装程序中,images目录下的各种磁盘镜像文件是如何挂载的?

尚未解决

jQuery Hotshot Book – More Info

图片 3
This book presents 10 projects created with jQuery 1.9 and they are
meant to help you master this library. The projects in this printed book
will also help you with plugins, user interfaces and more.

// <thead> matched above 
(!tags.indexOf(“<td”) || !tags.indexOf(“<th”)) && 
[ 3, “<table><tbody><tr>”,
“</tr></tbody></table>” ] || 

2、逻辑与

2、对话框函数 iDialog() 或 $.dialog();

jQuery UI Learning Book – More Info

图片 4
While there is a lot of code presented here as an example those who want
to improve their websites will find this task a piece of cake while
reading this guide. The book has over 200 pages packed with useful tips
and tricks.

!tags.indexOf(“<col”) && 
[ 2, “<table><tbody></tbody><colgroup>”,
“</colgroup></table>” ] || 

逻辑与操作符由两个和号(&&)表示,有两个操作数。

跨平台兼容:

jQuery in Action Book – More Info

图片 5
What many web creators do not know is that jQuery shortens the
considerably a code of 20 lines to about 3 or 4 lines. The coding
becomes easier to read and allows any errors to be easier to spot and
fix.

// IE can’t serialize <link> and <script> tags normally 
jQuery.browser.msie && 
[ 1, “div<div>”, “</div>” ] || 

逻辑与操作可以应用于任何类型的操作数,而不仅仅是布尔值。在有一个操作数不是布尔值的情况下,逻辑与操作就不一定返回布尔值;此时,它遵循一下规则:

兼容:IE6+、Firefox、Chrome等主流浏览器(其它暂时没条件测试)。并且IE6下也能支持现代浏览器的静止定位(fixed)、覆盖下拉控件。

Learning jQuery Learning Book – More Info

图片 6
This is another guide you should own if you want to create an
interactive website. This is the first edition of the book, having been
published in May 2013, thus its content is as fresh as possible.

[ 0, “”, “” ]; 

  1. 如果第一个操作数是对象,则返回第二个操作数;
    2.
    如果第二个操作数是对象,则只有在第一个操作数的求值结果为true的情况下才会返回该对象;
  2. 如果两个操作符都是对象,则返回第二个操作数; 遵循第一规则。
  3. 如果有一个操作是null,则返回null;
  4. 如果有一个操作符是NaN,则返回NaN;
  5. 如果有一个操作符是undefined,则返回undefined。

 

JavaScript jQuery Lost Manual – More Info

图片 7
If you already know some web design you know then that the language used
can be quite difficult. This Lost Manual uses a language that is easy to
understand even by those who just begin walking this interesting path.

  
深入研究查询资料后才明白,这一段到低是想搞些干什么,也才被这巨牛的写法所折服。 

逻辑与操作属于短路操作,即如果第一操作数能够决定结果,那么就不会再对第二个操作数求值。(可以理解为内部的两个return操作)。因此当4、5、6规则冲突时,遵循短路操作原则。

渐进增强的体验:

jQuery Cookbook Solutions – More Info

图片 8
There are many people who can learn faster if they have examples in
front of them. This book has examples, solutions to the most common
errors and more. Seeing how to create tabs, accordions and other UI
elements was never easier.

                
// Logical AND && : the second operand will always be returned, no
matter whatever it is, except the first operand is one of (0, -0, null,
“”, false, undefined, NaN) for such condition, the first operand will be
returned.    
                
// Logical OR || : the first operand will always be returned, except the
first operand is one of (0, -0, null, “”, false, undefined, NaN). 
// in this situation the second operand will be returned, no matter what
the second operand it is, even it’s the same to the first one. 

复制代码 代码如下:

确保IE家族功能完善的前提下,现代浏览器适当的添加css3增强体验,如阴影、圆角、和scale
show、super scale show 、right slide
show动画,动画亦可自己修改css文件进行扩展。

Head First jQuery Book – More Info

图片 9
Here you can get the original edition of this printed book aimed at
helping you improve your website, especially its appearance and its
functionality. Having over 500 pages you might want the Kindle version.

//<<Professional JavaScript for Web Developers 2nd
Edition.pdf>> Page 52. 

var nul = null;
var na = NaN;
var test;
test = na&&nul;
document.write(test); //NaN

 

Learning Web Design Beginners – More Info

图片 10
Learning something new is always a good thing to do and a web design is
a highly sought skill. Use this book to start your path on this high
rewarding career, especially if you are a beginner.

  
因为已经trim过了,前后都没有了空格,主要是前面没空字符串,所以此时判断是否以什么开头也就是startWith,最简单就是写成tags.indexOf(“<opt”),
看法indexOf,返回值当startWith为true时,刚好返回的是0, 其它情况: 
1,找到但是在字符串中间出现的返回值是大于0正数;2,完全没出现过时,返回为-1.
反正一样都是非0的数,而妙处就在在JavaScript定义中对number类对象,只是为0时,才被认为可转化为false,其它包括负数都被认为为true. 

复制代码 代码如下:

丰富的接口:

Murachs JavaScript jQuery – More Info

图片 11
jQuery is used by almost any website you encounter, and the more popular
it is, the chances for it to use this library increase. While jQuery
might seem difficult to learn alone, here is a book that tries to make
it easy for you.

The indexOf() method returns the position of the first occurrence of a
specified value in a string. 

var nul = null;
var na = NaN;
var test;
test = nul&&na;
document.write(test); //null

1.$.drag()函数,提供了拖拽范围设置,拖拽前,拖拽过程,拖拽结束的回调函数;
2.$.dialog()函数,提供了css3展示特效、大小、位置、显示、关闭和外部访问接口等,更多参考后面的API。

JavaScript JQuery Interactive Front End – More Info

图片 12
There are people who learn better when using visual material such as
images or videos. This book makes use of many colored images for a more
interactive approach to learning jQuery at home.

If the Boolean object has no initial value, or if the passed value is
one of the following: 

因此,我们来总结一下。&&操作主要遵循几大原则:

 

JavaScript Good Parts Book – More Info

图片 13
Dealing with programs that only have good parts is impossible and this
book will show you some of the bad aspects jQuery has. The bad jQuery
elements are the ones to ruin your programming or coding so avoiding
these aspects is possible only by knowing which ones they are.

0, -0, null, “”, false, undefined, NaN 
the object it is set to false. For any other value it is set to true
(even with the string “false”)! 

1.短路操作原则;
2.求值过程中会被转型生成副本,但是返回值是原来值;

快速入门:

Professional JavaScript for Developers – More Info

图片 14
If you are just beginning your career as an application developer, then
you must get this book as it reveals everything you need to know about
using jQuery, at this stage. This is the third edition of the book, so
it contains updated information.

This method returns -1 if the value to search for never occurs. 

复制代码 代码如下:

<script src=”lib/js/jquery-1.8.3.min.js”></script>

jQuery Mobile Running Book – More Info

图片 15
When you create an application meant for a certain type of device, users
of other devices will also want to benefit from it. This guide will
teach you how to make your application friendly towards all devices.

 
那么假设如果tag是以”<opt”开头的话,那indexOf的值就是0,而前面加一个!号后,
!tag.indoexOf(“<opt”) 的值就为true了, 那么就相当于是 
true && […], 再回头看看 && 的定义,
前一个值为false时才返回前一个参数值,
否则总是返回第二个参数(即便它自己也是false 或 NaN什么的)。 

// 伪代码
function &&(param1,param2){
bparam1 = Boolean(param1);
if (!bparam1) return param1;
bparam2 = Boolean(param2);
return param2;
}
// 参数是一个对象时返回引用的指针值,函数同

<script src=”lib/js/jquery.idialog.js”
dialog-theme=”default”></script>

Javascript Beginners Learning Book – More Info

图片 16
This guide will teach you how to program or how to improve the website
you run. Of course, learning a brand new skill might even improve your
chances of getting a different job, so what are you waiting for, to get
this book?

   总之呢, jQuery原码中中这两个逻辑符号用的频率是相当相当的高,特别是
|| 。 
jQuery中几乎没那几方法实现中不用它的。
用好它们的确可以使代码更简化,优雅,高效。 

3、逻辑或

jquery.iDialog.js是依赖jquery实现的,所以加载它之前必须加载jQuery;

Modern JavaScript Develop Book – More Info

图片 17
This book is aimed at beginners when it comes to Java as it contains
clear examples with pictures and step by step instructions. Various
other tips are shared to exemplify the best practices with the purpose
or developing skills that can actually be used when working with jQuery.

例如下段,其常被用于,有默认值的情况。a不行,让b上,b也不行时,那就只能c了。退而求其次的处理方式。 
// Start an animation from one number to another 
custom: function(from, to, unit){ 
this.startTime = now(); 
this.start = from; 
this.end = to; 
this.unit = unit || this.unit || “px”; 

逻辑或符号由两个竖线符号(||)表示。
逻辑或符号同样是短路操作符。其实现过程可以参照逻辑与的伪代码。这里就不再列出一些规则了。
逻辑或常常用来做参数的缺省处理,比如 evt = evt || window.event;

dialog-theme=”default”表示将自动加载default.css样式表;

JavaScript Patterns Learning Book – More Info

图片 18
JavaScript Patterns is a guide aimed at the more advanced Java
programmers while showing them what are the best practices when it comes
to this script. This guide also has some solutions to Java specific
issues.

clean方法中有这么一段第一眼看去会让人晕掉的方法。完全不知其所言。 ||,
可以这样用?,这段东西最终返回的是个什么对象啊…

逻辑非用!表示,可以应用与ECMAScript的任何类型的值,逻辑非操作返回的是一个布尔值(true/false)。该操作符首先会将它的操作…

default.css必须保存在theme文件夹里,且该文件夹与jquery.iDialog.js需在同一目录下。

Functional JavaScript Book – More Info

图片 19
In case you found the jQuery code looking a little bit odd and
complicated, with the help of this book this will no longer be the case.
You will learn how to write a clean code that is easy to follow and work
with.

iDrag()完整使用例子:

jQuery Basics JavaScript Programmer – More Info

图片 20
The jQuery versions used for this basic programmer guide are 1.10.2 and
2.0.3 while using step by step explanations and minimum repetitions.
Basic notions of HTML, CSS, and JavaScript are needed before reading
this ebook.

JS代码:

jQuery Pocket reference Book – More Info

图片 21
This guide will open your eyes to some jQuery uses that are not
implemented as much as they should. Several visual effects and
animations are just some of the tricks you will be learning with this
book.

 

jQuery UI Mobile Learning Book – More Info

图片 22
Learning how to create cross platform applications and how to make them
mobile friendly as well, has never been more easy. This book comes with
practical examples that can even be downloaded for a better
understanding.

 

JavaScript and HTML5 Book – More Info

图片 23
This Kindle edition book is free of charge currently and will show how
to bring the best in your HTML5 coding by using the JavaScript. You will
learn about how to create animations, games and other effects.

 

Pro jQuery Learning Book – More Info

图片 24
Not many books explain why jQuery is such a special and popular
JavaScript library, but this one does. This book will show you how to
simplify your coding while enriching the display of tables, forms and
other data.

 var log = $(‘#drag-demo-log’);

jQuery Novice to Ninja Book – More Info

图片 25
This is the second edition to this book and it includes jQuery 1.6
techniques. For a better understanding, the authors included a complete
code for you to take a look at and practice on.

 

Learning jQuery Fourth Jonathan Chaffer Book – More Info

图片 26
This book allows you to choose your format: digital for Kindle or
printed book and presents simple jQuery techniques that require minimal
knowledge when it comes to programming. One needs to know some basic
HTML and CSS before starting the jQuery path.

– See more at:

jQuery方面的书籍。它们固然都来自国外的作者之笔,
不过这些技术对于对于我们来说并不陌生…

  iDrag({

 

    target:’#drag-demo’,

 

    min:{x:0, y:0},

 

    max:{x:658, y:170},

 

    start: function (pos) {

 

      log.html(‘start:x=’+pos.x+’, y=’+pos.y);

 

    },

 

    move: function(pos){

 

      log.html(‘move:left=’+pos.x+’, top=’+pos.y);

 

    },

 

    end: function(pos){

 

       log.html(‘end:left=’+pos.x+’, top=’+pos.y);

 

    }

 

  });

 

 

 

一个iDialog()使用例子:

复制代码

 

  iDialog({

 

      title:’Hello World’,

 

      id:’DemoDialog  ‘,

 

      content:'<p>大家好:<br> 我是minDialog</p>’,

 

      lock: true,

 

      width:500,

 

      fixed: true,

 

      height:300

 

  }); 

 

 

 

iDialog 介绍 特点:
iDialog.js依赖于jquery编写的简单易用的对话框,同时还可以通过添加css3,改变对话框的展现动画。
提供了两个方法:…

相关文章