我利用网上特效开发的Jquery插件
我利用网上特效开发的Jquery插件
代码如下
- (function($){
- $.fn.Dialogx = function(options) {
- var defaults={
- Width:"300",
- Height:"300",
- Title:"对话框",
- Opacity:"0.2",
- Url:"",
- Content:""
- };
- var opts = $.extend({},defaults,options);
- $(this).click(function(){
- if(!$("#Dialogx").length>0)
- {
- //var maktemp='<div id="MarkZZ" style="background:#666;width:'+$(document).width()+'; height:'+($(document).height())+'px; position:absolute; top:0px; left:0px; z-index:80;"></div>';
- var maktemp='<div id="MarkZZ" style="background:#666;width:'+$(document).width()+'px; height:'+($(document).height())+'px; position:absolute; top:0px; left:0px; z-index:10;"></div>';
- //var tempstr ='<div class="showdiv" id="Dialogx"><div class="top"><div class="topleft"></div><div class="topmiddle" id="topmiddle"> <span style="float:left; color:#FFF; font-weight:bold; line-height:26px; font-size:12px;"> '+opts.Title+'</span><span style="float:right"><a href="javascript:"><img border="0" src="'+skinurl+'" width="26" height="20" id="diagclose" /></a></span></div><div class="topright"></div></div><div class="clear"></div><div class="middle"><div class="middleleft" id="middleleft"></div><div class="middlemiddle" id="middlemiddle"><div style="padding:5px;background:#fff;" id="middlecontent"><iframe src="'+opts.FrameURL+'" style="height:100%; width:100%;" scrolling="no" frameborder="0"></iframe></div></div><div class="middleright" id="middleright"></div></div><div class="clear"></div><div class="end"><div class="endleft"></div><div class="endmiddle" id="endmiddle"></div><div class="endright"></div></div><div class="clear"></div></div>';
- var tempstr ='<div class="Dialogx" id="Dialogx" style="z-index:20;"></div>';
- //if(opts.ContentFlag==1)
- //{
- // tempstr ='<div class="showdiv" id="Dialogx"><div class="top"><div class="topleft"></div><div class="topmiddle" id="topmiddle"> <span style="float:left; color:#FFF; font-weight:bold; line-height:26px; font-size:12px;"> '+opts.Title+'</span><span style="float:right"><a href="javascript:"><img border="0" src="'+skinurl+'" width="26" height="20" id="diagclose" /></a></span></div><div class="topright"></div></div><div class="clear"></div><div class="middle"><div class="middleleft" id="middleleft"></div><div class="middlemiddle" id="middlemiddle"><div style="padding:5px;background:#fff;" id="middlecontent">'+opts.Contents+'</div></div><div class="middleright" id="middleright"></div></div><div class="clear"></div><div class="end"><div class="endleft"></div><div class="endmiddle" id="endmiddle"></div><div class="endright"></div></div><div class="clear"></div></div>';
- //}
- $("body").append(maktemp);
- $("body").append(tempstr);
- }
- else
- {
- $("#MarkZZ").show();
- }
- var css={}
- if(window.navigator.userAgent.indexOf('MSIE')>=1)
- {
- css.filter= 'progid:DXImageTransform.Microsoft.Alpha(opacity='+opts.Opacity*100+')';
- }
- else
- {
- css.opacity= opts.Opacity;
- }
- $("#MarkZZ").css(css);
- var w,h,de;
- de = document.documentElement;
- w = self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
- h = self.innerHeight || (de&&de.clientHeight)|| document.body.clientHeight;
- var diagtop = h/2-(opts.Height/2)+eval($(document).scrollTop());
- var diagleft = w/2-(opts.Width/2)+eval($(document).scrollLeft());
- $("#Dialogx").css({"top" : diagtop,"left":diagleft,"width":opts.Width+"px","height":opts.Height+"px"});
- $("#Dialogx").append("<div class='top'></div>");
- $("#Dialogx .top").append("<div class='title'>"+ opts.Title+"</div>");
- $("#Dialogx .top .title")
- .css("margin-left","10px")
- .css("width",($("#Dialogx .top").width()-50)+"px");
- ;
- $("#Dialogx .top").append("<div class='button' style='width:35px;cursor: hand; '><span class='close'>X</span> </div>");
- $("#Dialogx").append("<div class='content'></div>");
- $("#Dialogx .content").css("height",($("#Dialogx").height()-40)+"px").css("width",($("#Dialogx").width()-10)+"px");
- if( opts.Content)
- {
- $("#Dialogx .content").html(opts.Content);
- }
- else if(opts.Url)
- {
- $("#Dialogx .content").html("<iframe src='' style='height:100%; width:100%;' scrolling='no' frameborder='0'></iframe>");
- $("#Dialogx .content>iframe").attr("src", opts.Url);
- }
- $(window).scroll(function(){
- var diagtop = h/2-(opts.Height/2)+eval($(document).scrollTop());
- var diagleft = w/2-(opts.Width/2)+eval($(document).scrollLeft());
- $("#Dialogx").css({"top" : diagtop,"left":diagleft });
- });
- $("#Dialogx .top .button .close").mousemove(
- //function(){
- // $(this).attr("src",skinurl2);
- //}
- ).mouseout(
- //function(){
- // $(this).attr("src",skinurl);
- //}
- ).click(function(){
- $("#Dialogx").remove();
- $("#MarkZZ").remove();
- })
- var _move =false;
- var _x =$("#Dialogx").pageX-parseInt($("#Dialogx").css("left").replace("px",""));
- var _y= $("#Dialogx").pageY-parseInt($("#Dialogx").css("top").replace("px",""));
- $("#Dialogx").click(function()
- {
- //alert("click");//点击(松开后触发)
- }).mousedown(function(e){
- _move=true;
- _x=e.pageX-parseInt($(this).css("left").replace("px",""));
- _y=e.pageY-parseInt($(this).css("top").replace("px",""));
- $(this).fadeTo(20, 0.5);//点击后开始拖动并透明显示
- });
- $(document).mousemove(function(e){
- if(_move){
- var x=e.pageX-_x;//移动时根据鼠标位置计算控件左上角的绝对位置
- var y=e.pageY-_y;
- $("#Dialogx").css({top:y,left:x});//控件新位置
- }
- }).mouseup(function(){
- _move=false;
- $("#Dialogx").fadeTo("fast", 1);//松开鼠标后停止移动并恢复成不透明
- });
- })
- };
- })(jQuery);
我利用网上特效开发的Jquery插件的更多相关文章
- 我利用网上代码开发的JQuery图片插件
我利用网上代码开发的JQuery图片插件 代码如下 (function($){ $.fn.FocusPic = function(options){ var defaults = { interval ...
- 开发一个jQuery插件——多级联动菜单
引言 开发中,有好多地方用到联动菜单,以前每次遇到联动菜单的时候都去重新写,代码重用率很低,前几天又遇到联动菜单的问题,总结了下,发现可以开发一个联动菜单的功能,以后想用的时候就方便多了.项目中每个页 ...
- 自己开发开源jquery插件--给jquery.treeview加上checkbox
很多时候需要把树状的数据显示除来,比如分类,中国省份.城市信息,等,因此这方面的javascript插件也有很多.比如性能优异的jquery.treeview和国人开发的功能强大的zTree. 我最近 ...
- 网站开发常用jQuery插件总结(11)折叠插件Akordeon
实现折叠菜单,可以完全不使用插件.如果使用jquery的话,实现起来也比较简单,我们只需要定义折叠菜单的样式,然后使用jquery中的渐隐渐现就可以了.如果我们自己写折叠菜单,可以方便的使用我们自己的 ...
- 网站开发常用jQuery插件总结(12)固定元素插件scrolltofixed
这个插件在前段时间用过一次,当时是改一个网站.要求顶部的菜单栏随着滚动条的滚动而固定.也大体写了一下,不过在文章中也只是提了一下,文章地址:jQuery插件固定元素位置. 在这篇文章中,再进行总结一下 ...
- 网站开发常用jQuery插件总结(五)滚动条插件nanoscroller
网站在展示信息时,如果信息量过大,解决方法主要有三种.1.分页,将信息分页显示.2.整页显示,但是页面过长,影响浏览体验.3.使用滚动条,而默认滚动条样式太单一,用户体验不友好.所以我们需要美化滚动条 ...
- 助你简化开发的 jQuery 插件
Vanity Toolset vanity toolset是一套方便的UI工具集,可以帮助你快速的搭建幻灯,聚光灯,占位,收放相关的UI,它完成了大部分的UI功能,你只需要花费很少时间就可以构建一个完 ...
- 网站开发常用jQuery插件总结(三)拖拽插件gridster
1.gridster插件功能 实现类似于win8 磁贴拖拽的功能 2.gridster官方地址 http://gridster.net/ 在官方的网站上也有插件的帮助和实例,但是按照官方的说明,我在本 ...
- 如何开发一个Jquery插件
Jquery有两种开发插件的方法: 1.jquery.fn.extend(object); 2.jquery.extend(object); 第一种方法是给Jquery对象添加方法,jquery.fn ...
随机推荐
- .NET (四)委托第四讲:内置委托Comparison
// 摘要: // 表示比较同一类型的两个对象的方法. // // 参数: // x: // 要比较的第一个对象. // // y: // 要比较的第二个对象. // // 类型参数: // T: / ...
- 常量函数、常量引用参数、常量引用返回值[C++]
1. 关于常量引用正像在C语言中使用指针一样,C++中通常使用引用 有一个函数... foo()并且这个函数返回一个引用...... & foo()...., 一个指向位图(Bitmap)的引 ...
- XidianOJ 1087 浪漫的V8
题目描述 V8为了讨女朋友开心,给lx承包大活后面那个水塘.为了筹集资金,V8偷偷地溜进了一座古墓,发现在他面前有金光闪闪的若干小箱子,里面全都是金粉,作为横行于各种@#¥&场所的V8来说,辨 ...
- 日志处理之logging模块
日志级别: 'CRITICAL': CRITICAL, 'ERROR': ERROR, 'WARN': WARNING, 'WARNING': WARNING, 'INFO': INFO, 'DEBU ...
- 【原】无规矩,不方圆——说一说正则里的exec()和test()
今天一大早遇就遇到一件诡异的事儿,可能是思绪还没有澄静下来,一下子没反应过来.事情是这样的: 模板: <input class="name" type="text& ...
- 316. Remove Duplicate Letters
Given a string which contains only lowercase letters, remove duplicate letters so that every letter ...
- 今天使用bootstrap中的tagsinput控件,碰到个小问题
我直接使用时,后台一直报Uncaught Can't add objects when itemValue option is not set错误, 代码如下: <div> <inp ...
- VC++ 迭代器 iterator, const_iterator, const iterator
迭代器 iterator, const_iterator, const iterator 迭代器iterator的作用类似于指针. (1)iterator只有针对制定<类型>的容器才有效. ...
- sql一个表中两个字段合并求和
sql一个表中两个字段,合并求和 SELECT SUM(字段a+'.'+字段b) as total from TABLE
- 获取应用图标,Drawable 转bitmap
获取应用图标: PackageManager p = context.getPackageManager(); Drawable draw=null; ApplicationInfo info; tr ...