004 JQuery (010 - 016)
[A] 放大镜练习
准备工作:一张 960 * 600 的图片,并命名为 timg.jpg
示例代码:
1. style样式
<style>
*{ margin: 0px; padding: 0px;}
#small{ width: 480px; height: 300px; border: solid black 1px;position: absolute;
left: 100px;top: 100px;}
#small img{ width: 100%; height: 100%;}
#magnify{ width: 100px; height: 100px; background-color: gray; border: solid black 1px;
opacity: 0.3; position: absolute; display: none; cursor: pointer;}
#large{ width: 400px; height: 400px; border: solid black 1px; position: absolute;
left: 700px; top: 100px; overflow: hidden;}
#large img{ width: 1920px; height: 1200px; position: absolute;}
</style>
2. js行为
<script src="jquery1102/jquery-1.10.2.min.js"></script>
<script>
$(function(){
$("#small").mouseover(function(ev){
$("#magnify").show();
$(document).mousemove(function(ev){
var oL = ev.clientX - $("#small").offset().left;
var oT = ev.clientY - $("#small").offset().top;
oL = oL < 50 ? 50 : oL;
oL = oL > 430 ? 430 : oL;
oT = oT < 50 ? 50 : oT;
oT = oT > 250 ? 250 : oT;
$("#magnify").css({
left: oL - 50,
top: oT - 50
});
$("#disp").css({
left: -4 * $("#magnify").position().left,
top: -4 * $("#magnify").position().top
})
})
})
$("#small").mouseout(function(){
$("#magnify").hide();
})
})
</script>
3. html布局
<body>
<div id="small">
<img src="timg.jpg">
<div id="magnify"></div>
</div>
<div id="large">
<img src="timg.jpg" id="disp">
</div>
</body>
[B] banner图练习
准备工作:准备五张图片,大小可自定,但是要求五张图片尺寸相同,分别命名为111.jpg,222.jpg,333.jpg,444.jpg,555.jpg。
示例代码:
1. css样式
<style>
*{ margin: 0px; padding: 0px;}
#container{ width: 1000px; height: 400px; border: solid black 1px; margin-top: 100px;
margin-left: 300px; position: relative; overflow: hidden;}
#container ol{ list-style: none;position: absolute; left: 700px; top:350px; z-index: 10;}
#container ol li{ width: 25px; height: 25px; float: left; margin-right: 30px; text-align: center;
line-height: 25px; border: solid gainsboro 1px; cursor: pointer;}
.active{ background-color: moccasin;}
#box{ position: absolute;}
#box img{ vertical-align: bottom;}
</style>
2. js行为
<script src="jquery1102/jquery-1.10.2.min.js"></script>
<script>
$(function(){
var flag = 0;
var timer = null;
function slider(user){
$("ol li").eq(flag).attr("class", "active").siblings().attr("class", "");
$("#box").animate({
top: flag * -400
}, 500, function(){
if(flag == 5 & user == null){
$("#box").css("top", 0);
$("ol li").eq(0).attr("class", "active").siblings().attr("class", "");
flag = 0;
}
})
}
timer = setInterval(() => {
flag++;
flag = flag % 6;
slider();
}, 1000);
$("#box").mouseenter(function(){
clearInterval(timer);
}).mouseleave(function(){
timer = setInterval(() => {
flag++;
flag = flag % 6;
slider();
}, 1000);
})
$("ol li").mouseover(function(){
clearInterval(timer);
flag = $(this).index();
slider("yes");
})
})
</script>
3. html布局
<body>
<div id="container">
<ol>
<li class="active">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ol>
<div id="box">
<a href="#"><img src="111.jpg"></a>
<a href="#"><img src="222.jpg"></a>
<a href="#"><img src="333.jpg"></a>
<a href="#"><img src="444.jpg"></a>
<a href="#"><img src="555.jpg"></a>
<a href="#"><img src="111.jpg"></a>
</div>
</div>
</body>
[C] 购物车练习
。。

浙公网安备 33010602011771号