window.$=function(selector){
return new $.fn.init(selector);
}
$.fn = $.prototype = {
init : function(selector){
selector = selector || document;
if (selector.nodeType) {
this[0] = selector;
this.length = 1;
return this;
}
if(typeof selector == "string"){
return $(document.getElementById(selector));
}
},
html : function(value) {
return value == undefined ? (this[0] ? this[0].innerHTML : null) : (this[0] ? this[0].innerHTML = value : this);
},
css : function(s){
for ( var name in s ) {
this[0].style[ name ] = s[ name ];
}
},
hide : function(speed,func){
speed = speed || 10;
this.css({filter:'alpha(opacity=100)',opacity:1});
var self_ = this;
this.alpha({start:10,end:0,speed:speed},function(){
self_.css({display:"none"});
if(func) func();
});
},
show : function(speed,func){
speed = speed || 10;
this.css({display:""});
this.alpha({start:0,end:10,speed:speed},func);
},
alpha : function(op,func){
var self_ = this;
var n = op.start;
var obj = this[0];
var end = op.end;
var step = op.start > op.end ? -1:1;
var alpha = function(){
n += step;
self_.css({'filter':'alpha(opacity=' + n*10 + ')','opacity':n/10});
if( n != end ){
window.setTimeout(alpha,op.speed);
}else{
if(func) func();
}
};
alpha();
},
val : function(value){
return value == undefined ? (this[0] ? this[0].value : null) : (this[0] ? this[0].value = value : this);
},
drag : function(){
var div = this[0];
var mouseD = false;
var mx = 0,my = 0;
var alphaFlg = false;
div.onmousedown = function(e){
var e = e ? e : event;
if(e.button == (document.all ? 1 : 0)){
mouseD = true;
mx = e.x ? e.x : e.pageX;
my = e.y ? e.y : e.pageY;
$(div).css({'left':this.offsetLeft + "px",'top':this.offsetTop + "px"});
if( $.isIE ){
this.setCapture();
}else{
window.captureEvents(Event.MOUSEMOVE);
}
$(div).css({'filter':'alpha(opacity=80)','opacity':0.8});
}
};
div.onmousemove = function(e){
var e = e ? e : event;
if( mouseD == true ){
var emX = e.x ? e.x : e.pageX;
var emY = e.y ? e.y : e.pageY;
var mrx = emX - mx;
var mry = emY - my;
$(div).css({left:parseInt(div.style.left) + mrx + "px",
top:parseInt(div.style.top) + mry + "px"});
mx = emX;
my = emY;
}
};
div.onmouseup = function(){
mouseD = false;
alphaFlg = false;
if( $.isIE ){
div.releaseCapture();
}else{
window.releaseEvents(div.MOUSEMOVE);
}
$(div).css({'filter':'alpha(opacity=100)','opacity':1});
};
}
}
$.fn.init.prototype = $.fn;
$.extend = $.fn.extend = function() {
var target = arguments[0] || {},
i = 1, length = arguments.length, deep = false, options;
if (target.constructor == Boolean) {
deep = target;
target = arguments[1] || {};
i = 2;
}
if (typeof target != "object" && typeof target != "function")
target = {};
if (length == i) {
target = this;
--i;
}
for (;i < length; i++)
if ((options = arguments[i]) != null)
for (var name in options) {
var src = target[name], copy = options[name];
if (target === copy)
continue;
if (deep && copy && typeof copy == "object" && !copy.nodeType)
target[name] = jQuery.extend(deep, src
|| (copy.length != null ? [] : {}), copy);
else if (copy !== undefined)
target[name] = copy;
}
return target;
};
$.extend({
isIE : !-[1,],
isArray : function(v){
return toString.apply(v) === '[object Array]';
},
isFunction : function(fn) {
return fn instanceof Function;
}
});
// AJAX
$.extend({
get : function(url,data,callback){
return $.ajax({
url : url,
data : data,
success : callback,
type : "GET"
});
},
post : function(url,data,callback){
return $.ajax({
url : url,
data :data,
success : callback,
type : "POST"
});
},
ajax : function(s){
var xhr = window.ActiveXObject
? new ActiveXObject("Microsoft.XMLHTTP")
: new XMLHttpRequest();
var type = s.type.toUpperCase();
var time = s.time ? s.time : 10000;
var url = s.url;
var sendBody = this.formatParam(s.data);
var timer = setTimeout(function(){
if ( typeof s.timeout == "function" ) s.timeout();
if ( xhr ) {
xhr.abort();
xhr = null;
}
return true;
},time);
if ( 'GET' == type ) {
url = [url, ( url.indexOf('?') == -1 ? '?' : '&') ,sendBody].join('');
sendBody = null;
}
if ( ! s.cache ) {
url = [url, ( url.indexOf('?') == -1 ? '?' : '&') , "ajaxtimestamp=" , (new Date()).getTime()].join('');
}
xhr.open(type,url,s.async);
if ( "POST" == type ) xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
xhr.onreadystatechange = function(){
if( xhr.readyState == 4 ){
if ( xhr.status == 200 ){
if ( timer ) clearTimeout(timer);
var text = xhr.responseText;
if (s.success) s.success(text);
}
}
}
xhr.send( sendBody );
},
formatParam:function(data){
if ( ! data || typeof data != "object" ) return data;
var k,r = [];
for ( k in data ) {
r.push([k,'=',encodeURIComponent(data[k])].join(''));
}
return r.join('&');
}
})
分享到:
相关推荐
这个“jQuery新浪微博头像裁切预览代码”是一个实现这一功能的示例,它仿照了新浪微博的头像裁剪功能,让用户在上传图片前可以预览并调整裁剪区域,确保最终裁剪出的图片满足需求。 jQuery是一个广泛使用的...
本资源"jquery实现的点击弹出遮罩背景并且可以拖动关闭的弹出层特效代码.zip"提供了一个利用jQuery创建交互式弹出层的实例,该弹出层具有遮罩背景效果并支持通过拖动来关闭。 首先,我们需要理解jQuery中的基本概念...
【jQuery仿探探APP手机滑动切换特效】是一种在移动端网页设计中常见的交互效果,它模仿了探探APP中的卡片式滑动浏览体验。这种特效主要用于提升用户在浏览内容时的交互性和趣味性,尤其适用于展示一系列类似内容,如...
google可谓是ajax的特效用的淋漓尽致,google suggest, google map,igoogle 可拖动窗口等等…今天要做一个网站的类似效果,仿照iGoogle做了一个简单的小demo。 这个的demo是根据一个Jquery的框架直接做出来的:...
在网页设计中,XP风格窗口是一种仿照微软Windows XP操作系统界面设计的网页元素,它能够为用户带来熟悉的操作体验。这种设计通常包括窗口标题栏、最大化/最小化按钮、关闭按钮以及可拖动和拉伸的功能。在本项目中,...
jQuery是一个轻量级的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。jQuery的核心特性包括: 1. **选择器**:jQuery提供了丰富的选择器,如ID选择器(#id)、类选择器(.class)、属性选择器([attr]...
首先,jQuery是一个广泛使用的JavaScript库,它简化了DOM操作、事件处理、动画制作和Ajax交互等任务。在仿照PS的参考线和尺寸测量功能时,jQuery可以帮助我们动态地创建和更新HTML元素,实现用户交互。 1. **参考线...
首先,jQuery是一个强大的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。在这个项目中,jQuery将被用来处理用户的触摸事件,检测滑动方向,并触发相应的解锁动作。 要实现这个效果,你...
3. **拖动功能**:为了实现Igoogle的模块可拖动特性,我们需要使用JavaScript或jQuery等库来实现事件监听和元素位置更新。通常,我们会监听鼠标按下、移动和释放事件,计算鼠标移动的距离,并相应地改变`div`的位置...
jQuery是一个广泛使用的JavaScript库,它简化了DOM操作、事件处理和Ajax交互等任务。在这个Excel模拟器中,jQuery可以用来更方便地选择和操作DOM元素,如快速获取或设置单元格的值,以及更流畅地处理键盘和鼠标事件...
此外,为了便于用户管理无限分类,可以考虑使用拖拽排序插件,如jQuery UI的Sortable,让用户通过拖拽调整分类顺序。后端需要接收排序后的序列,然后更新每个分类的`sort_order`字段,以保持正确的显示顺序。 总结...