JQuery基础案例(仅提供js代码)
- 1. 排行榜
- 2. Tap选项卡
- 3. 对联广告
- 4. 折叠菜单
- 5. 下拉菜单
- 6. 弹窗广告
- 7. 图标特效
- 8. 无限循环滚动
- 9. 微博
1. 排行榜
效果:(显示隐藏排行榜具体内容)
- 方法一
- mouseenter
- mouseleave
<script>
$(function () {
$("li").mouseenter(function () {
$(this).addClass("current");
});
$("li").mouseleave(function () {
$(this).removeClass("current");
});
});
script>
<script>
$(function () {
$("li").hover(function () {
$(this).addClass("current");
}, function () {
$(this).removeClass("current");
});
});
script>
2. Tap选项卡
效果:(切换到选中的Tap图片)
- siblings 方法
- 获取除被选中元素之外所有的同级元素节点
- 可以添加条件
<script>
$(function () {
$(".nav>li").mouseenter(function () {
$(this).addClass("current");
$(this).siblings().removeClass("current");
var index = $(this).index();
var $li = $(".content>li").eq(index);
$li.siblings().removeClass("show");
$li.addClass("show");
});
});
script>
3. 对联广告
效果:(浏览器滚动到一定程度显示广告)
- scroll 方法
- 当用户滚动指定的元素时,会发生 scroll 事件
- scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口)
<script>
$(function () {
$(window).scroll(function () {
var offset = $("html,body").scrollTop();
if(offset >= 500){
$("img").show(1000);
}else{
$("img").hide(1000);
}
});
});
script>
4. 折叠菜单
效果:(一级菜单点击展开收起)
- children 方法
- children() 方法返回被选元素的所有直接子元素
<script>
$(function () {
$(".nav>li").click(function () {
var $sub = $(this).children(".sub");
$sub.slideDown(1000);
var otherSub = $(this).siblings().children(".sub");
otherSub.slideUp(1000);
$(this).addClass("current");
$(this).siblings().removeClass("current");
});
});
script>
5. 下拉菜单
效果:(鼠标移入下拉出二级菜单)
<script>
$(function () {
$(".nav>li").mouseenter(function () {
var $sub = $(this).children(".sub");
$sub.stop();
$sub.slideDown(1000);
});
$(".nav>li").mouseleave(function () {
var $sub = $(this).children(".sub");
$sub.stop();
$sub.slideUp(1000);
});
});
script>
6. 弹窗广告
效果:(右下角淡出广告)
<script>
$(function () {
$("span").click(function () {
$(".ad").remove();
});
$(".ad").stop().slideDown(1000).fadeOut(1000).fadeIn(1000);
});
script>
7. 图标特效
效果:(图标上滑一周)
<script>
$(function () {
$("li").each(function (index, ele) {
var $url = "url(\"images/bg.png\") no-repeat 0 "+(index * -24)+"px"
$(this).children("span").css("background", $url);
});
$("li").mouseenter(function () {
$(this).children("span").animate({
top: -50
}, 1000, function () {
$(this).css("top", "50px");
$(this).animate({
top: 0
}, 1000);
});
});
});
script>
8. 无限循环滚动
效果:(图片无限轮播)
<script>
$(function () {
var offset = 0;
var timer;
function autoPlay(){
timer = setInterval(function () {
offset += -10;
if(offset <= -1200){
offset = 0;
}
$("ul").css("marginLeft", offset);
}, 50);
}
autoPlay();
$("li").hover(function () {
clearInterval(timer);
$(this).siblings().fadeTo(100, 0.5);
$(this).fadeTo(100, 1);
}, function () {
autoPlay();
$("li").fadeTo(100, 1);
});
});
script>
9. 微博
效果:(实时发布评论,点赞,点踩,删除评论)
$(function () {
$("body").delegate(".comment","propertychange input", function () {
if($(this).val().length > 0){
$(".send").prop("disabled", false);
}else{
$(".send").prop("disabled", true);
}
});
$(".send").click(function () {
var $text = $(".comment").val();
var $weibo = createEle($text);
$(".messageList").prepend($weibo);
});
$("body").delegate(".infoTop", "click", function () {
$(this).text(parseInt($(this).text()) + 1);
});
$("body").delegate(".infoDown", "click", function () {
$(this).text(parseInt($(this).text()) + 1);
});
$("body").delegate(".infoDel", "click", function () {
$(this).parents(".info").remove();
});
function createEle(text) {
var $weibo = $("\n"
+
" "
+text
+"\n" +
" \n"
+
" "+formartDate()+"\n" +
" \n" +
" 0\n" +
" 0\n" +
" 删除\n" +
" \n" +
" \n" +
" ");
return $weibo;
}
function formartDate() {
var date = new Date();
var arr = [date.getFullYear() + "-",
date.getMonth() + 1 + "-",
date.getDate() + " ",
date.getHours() + ":",
date.getMinutes() + ":",
date.getSeconds()];
return arr.join("");
}
});