1 String.prototype.replaceAll  = function(s1,s2){ 
  2 return this.replace(new RegExp(s1,"gm"),s2);     
  3 }; 
  4 (function($){ 
  5 /* 
  6  * $-layer 0.1 - New Wave Javascript 
  7 
  8  * Copyright (c) 2008 King Wong 
  9 
10  * $Date: 2008-10-09  $ 
11  */ 
12 var ___id___ = ""
13 var ___settings___ = {}; 
14 var isMouseDown    = false
15 
16 var currentElement = null
17 
18 var dropCallbacks = {}; 
19 var dragCallbacks = {}; 
20 
21 var bubblings = {}; 
22 
23 var lastMouseX; 
24 var lastMouseY; 
25 var lastElemTop; 
26 var lastElemLeft; 
27 
28 var dragStatus = {};     
29 
30 var holdingHandler = false
31 
32 $.getMousePosition = function(e){ 
33     var posx = 0
34     var posy = 0
35 
36     if (!e) var e = window.event; 
37 
38     if (e.pageX || e.pageY) { 
39         posx = e.pageX; 
40         posy = e.pageY; 
41     } 
42     else if (e.clientX || e.clientY) { 
43         posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft; 
44         posy = e.clientY + document.body.scrollTop  + document.documentElement.scrollTop; 
45     } 
46     return { 'x': posx, 'y': posy }; 
47 }; 
48 $.updatePosition = function(e) { 
49     var pos = $.getMousePosition(e); 
50 
51     var spanX = (pos.x - lastMouseX); 
52     var spanY = (pos.y - lastMouseY); 
53     var _top = (lastElemTop + spanY) > 0 ? (lastElemTop + spanY) : 0
54     var _left = (lastElemLeft + spanX) > 0 ? (lastElemLeft + spanX) : 0
55     $("#"+___id___).css("top",  _top); 
56     $("#"+___id___).css("left", _left); 
57 }; 
58 
59 $.fn.ondrag = function(callback){ 
60     return this.each(function(){ 
61         dragCallbacks[this.id] = callback; 
62     }); 
63 }; 
64 $.fn.ondrop = function(callback){ 
65     return this.each(function(){ 
66         dropCallbacks[this.id] = callback; 
67     }); 
68 }; 
69 
70 $.fn.dragOff = function(){ 
71     return this.each(function(){ 
72         dragStatus[this.id] = 'off'
73     }); 
74 }; 
75 
76 $.fn.dragOn = function(){ 
77     return this.each(function(){ 
78         dragStatus[this.id] = 'on'
79     }); 
80 }; 
81 $.extend({ 
82     layerSettings:{ 
83         id:"layerdiv"
84         width:220
85         height:220
86         templete:'<div style="height:20px; width:@width@px; background-color:#777777;"><span >})(jQuery);

相关文章: