欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于jquery的一個浮動框(擴展性比較好 )

 更新時間:2010年08月27日 22:44:11   作者:  
在用Maxthon的時候無意看到一個浮動框,把它改成基于jquery的,擴展性比較好,發(fā)來分享下。
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
body
{
height:2000px;
}
.float_mx{
background:#CCC;
width:100px;
height:100px;
display:none;
}
</style>
</head>
<body>
<div class="float_mx">
在此添加內容
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function($) {
$.fn.scrollBox = function(options){
var defaultOptions = {
speed: 0.1, //加速
time: 16, //移動速度
top: 200, //默認頂部
align: 'right', //浮動位置,可選左、右
mix: 0 //邊距
};
var options = $.extend(defaultOptions, options);
this.each(function(){
var obj = $(this);
init();
function init(){
obj.css('display', 'block');
obj.css('position', 'absolute');
obj.css(options.align, options.mix);
obj.css('top', options.top+'px');
obj.css('z-index', '99');
move();
}
function back() {
acceleration = options.speed;
time = options.time;
var x1 = 0;
var y1 = 0;
var x2 = 0;
var y2 = 0;
if (document.documentElement) {
x1 = document.documentElement.scrollLeft || 0;
y1 = document.documentElement.scrollTop || 0;
}
if (document.body) {
x2 = document.body.scrollLeft || 0;
y2 = document.body.scrollTop || 0;
}
var x = Math.max(x1, x2);
var y = Math.max(y1, y2);
var speed = acceleration;
return {
l: x,
t: y,
s: speed
};
};

function move(){
var tip = obj;
var old = options.top;
var pos = back().t;
pos = pos - $(tip).Coordinate().y + options.top;
pos = $(tip).Coordinate().y + pos / 10;
if (pos < options.top) {
pos = options.top;
}
if (pos != old) {
tip.css('top',pos + "px");
}
old = pos;
window.setTimeout(function(){move();}, options.time);
};
});
};
$.fn.Coordinate = function(){
var E = $(this)[0];
var C = E.offsetTop;
var B = E.offsetLeft;
var A = E.offsetWidth;
var D = E.offsetHeight;
while (E = E.offsetParent) {
C += E.offsetTop;
B += E.offsetLeft;
}
return {
x: B,
y: C,
w: A,
h: D
};
};
})(jQuery);
$('.float_mx').scrollBox();
</script>
</body>
</html>

把下面這段代理放到單獨的js文件中,代碼中的css代碼可以刪掉,display設為none,是為了避免在頁面未加載完,顯示不正確的問題。
復制代碼 代碼如下:

(function($) {
$.fn.scrollBox = function(options){
var defaultOptions = {
speed: 0.1, //加速
time: 16, //移動速度
top: 200, //默認頂部
align: 'right', //浮動位置,可選左、右
mix: 0 //邊距
};
var options = $.extend(defaultOptions, options);
this.each(function(){
var obj = $(this);
init();
function init(){
obj.css('display', 'block');
obj.css('position', 'absolute');
obj.css(options.align, options.mix);
obj.css('top', options.top+'px');
obj.css('z-index', '99');
move();
}
function back() {
acceleration = options.speed;
time = options.time;
var x1 = 0;
var y1 = 0;
var x2 = 0;
var y2 = 0;
if (document.documentElement) {
x1 = document.documentElement.scrollLeft || 0;
y1 = document.documentElement.scrollTop || 0;
}
if (document.body) {
x2 = document.body.scrollLeft || 0;
y2 = document.body.scrollTop || 0;
}
var x = Math.max(x1, x2);
var y = Math.max(y1, y2);
var speed = acceleration;
return {
l: x,
t: y,
s: speed
};
};

function move(){
var tip = obj;
var old = options.top;
var pos = back().t;
pos = pos - $(tip).Coordinate().y + options.top;
pos = $(tip).Coordinate().y + pos / 10;
if (pos < options.top) {
pos = options.top;
}
if (pos != old) {
tip.css('top',pos + "px");
}
old = pos;
window.setTimeout(function(){move();}, options.time);
};
});
};
$.fn.Coordinate = function(){
var E = $(this)[0];
var C = E.offsetTop;
var B = E.offsetLeft;
var A = E.offsetWidth;
var D = E.offsetHeight;
while (E = E.offsetParent) {
C += E.offsetTop;
B += E.offsetLeft;
}
return {
x: B,
y: C,
w: A,
h: D
};
};
})(jQuery);

相關文章

  • Query中click(),bind(),live(),delegate()的區(qū)別

    Query中click(),bind(),live(),delegate()的區(qū)別

    這篇文章主要介紹了Query中click(),bind(),live(),delegate()之間的區(qū)別。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • jQuery實現每隔幾條元素增加1條線的方法

    jQuery實現每隔幾條元素增加1條線的方法

    這篇文章主要介紹了jQuery實現每隔幾條元素增加1條線的方法,可實現每隔10條li元素增加一條虛線的功能,涉及jQuery元素的匹配與屬性動態(tài)設置技巧,需要的朋友可以參考下
    2016-06-06
  • jQuery解析json數據實例分析

    jQuery解析json數據實例分析

    這篇文章主要介紹了jQuery解析json數據的具體實現方法,結合實例形式較為詳細的分析了jQuery解析json格式數據的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • 使用jQuery的attr方法來修改onclick值

    使用jQuery的attr方法來修改onclick值

    這篇文章主要介紹了通過jQuery的attr修改onclick值的解決方法 ,需要的朋友可以參考下
    2014-07-07
  • 利用jquery實現瀑布流3種案例

    利用jquery實現瀑布流3種案例

    這篇文章主要為大家詳細介紹了利用jquery實現瀑布流2種案例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • jquery操作 iframe的方法

    jquery操作 iframe的方法

    這篇文章主要介紹了jquery操作 iframe的方法,需要的朋友可以參考下
    2014-12-12
  • jQuery實現簡易聊天框

    jQuery實現簡易聊天框

    這篇文章主要為大家詳細介紹了jQuery實現簡易聊天框,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • jQuery操作之效果詳解

    jQuery操作之效果詳解

    jQuery效果操作一共分五類:1.基本,2.滑動,3.淡入淡出,4.自定義,5.設置。本文將對此詳細介紹。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-05-05
  • 基于jQuery實現文字打印動態(tài)效果

    基于jQuery實現文字打印動態(tài)效果

    這篇文章主要介紹了基于jQuery實現文字打印動態(tài)效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 利用jquery.qrcode在頁面上生成二維碼且支持中文

    利用jquery.qrcode在頁面上生成二維碼且支持中文

    這篇文章主要介紹了利用jquery.qrcode在頁面上生成二維碼且支持中文。需要的朋友可以過來參考下,希望對大家有所幫助
    2014-02-02

最新評論