欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  技术分享

jQuery仿360浏览器和火狐Firefox导航页九宫格图片拖拽排序并有抖动效果

程序员文章站 2022-03-01 15:00:56
...
本例子主要实现的是通过jQuery仿360导航页和火狐浏览器图标div拖动排序效果

同样这个代码也可以实现九宫格图片拖拽排序特效、如果有使用九宫格的朋友有福了

主要使用了jQuery的拖拽功能、运行效果大家可以下载源代码观看哈、实现代码非常简单

HTML代码

<div class="item_container">
<div class="item_content">
<ul>
	<li><div class="item"><img src="images/youku.png" /></div></li>
	<li><div class="item"><img src="images/jd.png" /></div></li>
	<li><div class="item"><img src="images/taobao.png" /></div></li>
	<li><div class="item"><img src="images/fenghuan.png" /></div></li>
	<li><div class="item"><img src="images/souhu.png" /></div></li>
	<li><div class="item"><img src="images/wangyi.png" /></div></li>
	<li><div class="item"><img src="images/renren.png" /></div></li>
	<li><div class="item"><img src="images/360.png" /></div></li>
	<li><div class="item"><img src="images/360game.png" /></div></li>
</ul>
</div>
</div>


jQuery初始化代码

this.init = function() {
	this.box = $(this).parent() ;
	$(this).attr("index", i).css({
		position : "absolute",
		left : this.box.offset().left,
		top : this.box.offset().top
	}).appendTo(".item_content") ;
	this.drag() ;
}


jQuery拖动码

this.move = function(callback) {
	$(this).stop(true).animate({
		left : this.box.offset().left,
		top : this.box.offset().top
	}, 500, function() {
		if(callback) {
			callback.call(this) ;
		}
	}) ;
}


jQuery交换位置

this.swap = function(currentItem, direction) {
if(this.moveing) return false ;
var directions = {
	normal : function() {
		var saveBox = this.box ;
		this.box = currentItem.box ;
		currentItem.box = saveBox ;
		this.move() ;
		$(this).attr("index", this.box.index()) ;
		$(currentItem).attr("index", currentItem.box.index()) ;
	},
	down : function() {
		// 移到上方
		var box = this.box ;
		var node = this ;
		var startIndex = currentItem.box.index() ;
		var endIndex = node.box.index(); ;
		for(var i = endIndex; i > startIndex ; i--) {
			var prevNode = $(".item_content .item[index="+ (i - 1) +"]")[0] ;
			node.box = prevNode.box ;
			$(node).attr("index", node.box.index()) ;
			node.move() ;
			node = prevNode ;
		}
		currentItem.box = box ;
		$(currentItem).attr("index", box.index()) ;
	},
	up : function() {
		// 移到上方
		var box = this.box ;
		var node = this ;
		var startIndex = node.box.index() ;
		var endIndex = currentItem.box.index(); ;
		for(var i = startIndex; i < endIndex; i++) {
			var nextNode = $(".item_content .item[index="+ (i + 1) +"]")[0] ;
			node.box = nextNode.box ;
			$(node).attr("index", node.box.index()) ;
			node.move() ;
			node = nextNode ;
		}
		currentItem.box = box ;
		$(currentItem).attr("index", box.index()) ;
	}
}
directions[direction].call(this) ;
}


最后给大家献上源代码的下载链接: http://dwtedx.com/download.html?bdkey=s/1mgC664g 密码: 4jbi