使用jQuery打造炫酷网页效果摘要:使用jQuery打造炫酷网页效果
虽然现在看似全球都在使用JavaScript,但是使用jQuery这样的库还是十分有必要的,jQuery是一个快速、简洁并且解决了许多浏览器兼容性问题的JavaScr
虽然现在看似全球都在使用JavaScript,但是使用jQuery这样的库还是十分有必要的,jQuery是一个快速、简洁并且解决了许多浏览器兼容性问题的JavaScript库。它几乎是Web前端开发人员的必备工具之一,无论是移动端还是PC端。jQuery强大的选择器、DOM操作、事件机制以及AJAX功能,可以很大程度上提高Web开发效率,使人效率更胜一筹。
第一段:选择器和过渡效果
使用jQuery可以方便地获取文档中的DOM元素,方法类似CSS选择器。通过选择器可以轻松实现某些元素的绑定和动态效果的实现。下面用一个例子进行演示:
HTML代码:
<!doctypehtml>
<html>
<head>
<metacharset="utf-8">
<title>使用jQuery打造炫酷网页效果</title>
</head>
<body>
<divclass="box">Helloworld!</div>
</body>
</html>
jQuery代码:
$(document).ready(function(){
$('.box').click(function(){
$(this).animate({
opacity:'0.5',
height:'+=100px',
width:'+=100px'
},500,function(){
alert('FinishedAnimation');
});
});
});
我们在div的class中设置box样式,然后添加一个文本\"Helloworld!\"。在JavaScript中,我们使用jQuery中的click()方法绑定一个点击事件,当用户单击box元素后触发回调函数,并运行animate()方法创建一个过渡动画。此方法使元素变为半透明,增加100像素的高度和宽度,动画时间为500毫秒。当动画完成后,调用回调函数并弹出一个警告框。
第二段:淡入淡出效果和鼠标事件
在网页中实现鼠标的悬停效果非常常见,我们看一个例子:
HTML代码:
<!DOCTYPEhtml>
<html>
<head>
<metacharset=\"utf-8\">
<title>使用jQuery打造炫酷网页效果</title>
<style>
.content{
width:300px;
height:300px;
position:relative;
overflow:hidden;
}
.img{
position:absolute;
top:0;
left:0;
opacity:0;
transition:all0.7slinear;
}
.img:hover{
opacity:1;
}
</style>
</head>
<body>
<divclass=\"content\">
<imgsrc=\"image1.jpg\"alt=\"\"class=\"img\">
<imgsrc=\"image2.jpg\"alt=\"\"class=\"img\">
<imgsrc=\"image3.jpg\"alt=\"\"class=\"img\">
</div>
</body>
</html>
我们在div中嵌套了三张图片,分别绑定在img元素中。CSS样式使img元素父容器具有相对定位和宽度和高度。使用子元素的绝对定位属性,先将所有的img元素隐藏。当用户将光标悬停在任何一个图片上时,我们使用:hover伪类将其设置为完全不透明,完成悬停效果。
知道了如何实现鼠标滑过的效果,还要了解如何响应点击事件。我们看一个以放大图片为例的案例:
HTML代码:
<!DOCTYPEhtml>
<html>
<head>
<metacharset=\"utf-8\">
<title>使用jQuery打造炫酷网页效果</title>
<style>
.contentimg{
width:100px;
height:100px;
border:5pxsolid#fff;
margin:010px10px0;
float:left;
}
.showimg{
position:absolute;
top:0;
left:0;
right:0;
bottom:0;
background:rgba(0,0,0,0.5);
display:none;
z-index:99;
}
.showimgimg{
margin:10%auto;
max-width:80%;
max-height:80%;
display:block;
}
</style>
</head>
<body>
<divclass=\"content\">
<imgsrc=\"image1.jpg\"alt=\"\"class=\"img\">
<imgsrc=\"image2.jpg\"alt=\"\"class=\"img\">
<imgsrc=\"image3.jpg\"alt=\"\"class=\"img\">
</div>
<divid=\"container\">
<divclass=\"showimg\"><imgsrc=\"\"></div>
</div>
</body>
</html>
在CSS样式中,我们设置图片的外观样式、浮动样式和边距样式。然后添加一个包裹图片的div容器以及用于显示放大图片的showimg容器。使用阴影效果的纯黑色背景,以及设置显示为隐藏。通过点击一个图像,我们可以在.showimgdiv中显示一张放大图像。jQuery
$(document).ready(function(){
$('.contentimg').click(function(){
$('#container').fadeIn();
$('.showimgimg').attr('src',$(this).attr('src'));
$('.showimg').fadeIn();
});
$('#container').click(function(){
$('#container').fadeOut();
$('.showimg').fadeOut();
});
});
我们先定义两个click事件:第一个绑定在每个图像上,当用户单击图像时,显示的蒙板和.showimgdiv慢慢变淡以呈现出放大图像。另一个事件会在用户单击showimagediv区域外部的任何地方时隐藏蒙板和.showimgdiv,恢复原始状态。
第三段:实现拖放功能和文本框提示效果
在网页中实现拖放效果是很容易的,只需要使用jQueryUI库中的一些方法即可。我们看个例子:
HTML代码:
<!DOCTYPEhtml>
<html>
<head>
<metacharset=\"utf-8\">
<title>使用jQuery打造炫酷网页效果</title>
<style>
#draggable{
width:100px;
height:100px;
background-color:blue;
color:white;
text-align:center;
padding:10px;
}
#droppable{
width:200px;
height:200px;
margin-top:20px;
background-color:yellow;
padding:10px;
}
</style>
</head>
<body>
<divid=\"draggable\">可拖拽的</div>
<divid=\"droppable\">拖到这里</div>
</body>
</html>
我们在HTML中定义了两个div,其中一个(draggable)设置为可拖拽的,另一个为接收拖放的目标(droppable)。很简单真的,无需使用JavaScript或jQuery创建新的HTML标记或CSS实现。而如果不使用jQueryUI,实现这些效果则不是一件容易的事。
当然,我们还可以使用jQuery为文本框添加提示,当用户输入时,相应文本会自动为其添加提示信息。只需要使用事件处理程序和placeholder属性即可:
HTML代码:
<!DOCTYPEhtml>
<html>
<head>
<metacharset=\"utf-8\">
<title>使用jQuery打造炫酷网页效果</title>
</head>
<body>
<inputtype=\"text\"placeholder=\"请输入用户名\">
</body>
</html>
上面的代码片段中,我们添加了placeholder属性。添加了这个属性,文本框会在其中添加一些提示内容,这些内容提示用户输入的正确描述。但这个提示仅是正常提示,他不会在用户开始键入时消失。所以我们使用jQuery轻松解决这个问题:
$(document).ready(function(){
$('input[type=\"text\"]').focus(function(){
$(this).attr('data-text',$(this).attr('placeholder'));
$(this).attr('placeholder','');
}).blur(function(){
$(this).attr('placeholder',$(this).attr('data-text'));
});
});
使用focus和blur事件以实现这个效果。当输入框获得焦点时,placeholder属性值将保存在一个data-text类属性中,以防止在用户开始输入时丢失。当输入框失去焦点时,使用输入框的data-text属性值来恢复原来的placeholder值。称之为真正的智能提示。
jQuery无疑是开发网站和Web应用程序的必备工具。正如我们看到的那样,它用少量的代码实现了各种强大的效果。从选择器到动画和数据集函数,jQuery是设计美丽和响应迅速的网页的不二选择。