fancybox1.3.1 基于Jquery的插件在IE中图片显示问题
显示HTML,swf,Iframe,ajax请求
支持鼠标滚动显示图片
支持阴影,放大效果
自定义CSS与增加导航按钮
官方有提供比较详细的API,与及How to Use .这里我们不介如何使用了,您可以参看官方网站。下面我们看一段示例代码:
var selectedid = $("select[name$=DdlSearchProfile]").val();
var selectedtxt = $("select[name$=DdlSearchProfile] :selected'").text();
$("#editsp").fancybox({
ajax: {
type: "POST",
data: "selectedid=" + selectedid + "&selectedtxt=" + selectedtxt,
cache: false
},
autoDimensions: false,
width: 300,
height: 125,
scrolling: 'no',
//onStart: OnStartCheck,
onComplete: OnshowtxtForEdit,
titleShow: false,
enableKeyboardNavigation: false
});
这里我们使用它的以ajax方式去load一个page.并传值。我们可以Server端取到相应的Data,如上面的Id,text. OnComplete是一个CallBack,熟悉JQuery应该知道。它提供了好几个CallBack,您可以对应具体的场景调用。
我们接下面主要是解决一个在IE中Close按钮图片显示不出的问题。我们看到它的CSS使用的了AlphaImageLoader Filter,关于如何使用这个Filter你可以参考这篇POST
一种方法是使用绝对Path,如:
1: AlphaImageLoader(src='http://yourdomain.com/js/fancybox/ fancy_loading.png' ..
另一种方法是使用Javascript,打开jquery.fancybox-1.3.1.css,提到#fancybox-loading.fancybox-ie div 处替换成以下代码:
.fancybox-ie #fancybox-close { background: transparent; behavior: expression(this.runtimeStyle.filter?'':this.runtimeStyle.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ (function(){var t=document.getElementsByTagName('link');for(var i=0;i<t.length;i++){var h=t[i].href.split('?')[0];if(h&&/polaroid_gallery\\.css$/.test(h)){return h.replace('polaroid_gallery.css','');}} return '';})() +"Scripts/fancybox/fancy_close.png',sizingMethod='scale')"); }
看上去有点儿funy, 在css使用Javascript.
然后就可以了,这里我们使用的是IE 8.0.7600.16385。fancybox 1.31 的版本。最好的解决方案是实现自定义的样式,也不会有这样的问题。后面我们发面这个网站也在使用fancybox。可以参考:
http://www.microsoft.com/express/windows/
希望这篇POST对您开发有帮助。
相关文章
jQuery源码分析之jQuery.fn.each与jQuery.each用法
这篇文章主要介绍了jQuery源码分析之jQuery.fn.each与jQuery.each用法,较为详细的分析了each的用法,非常具有实用价值,需要的朋友可以参考下2015-01-01
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
本文重点是来讲讲jQuery中调用ajax的4种方法:$.get、$.post、$getJSON、$ajax。如果读者没有javascript和jquery的知识,或者没有ajax的概念,那么请先去问问度娘,再来读本文。2014-11-11
JQuery FlexiGrid的asp.net完美解决方案 dotNetFlexGrid-.Net原生的异步表格控件
dotNetFlexGrid是一款dotNet原生的异步表格控件,他的前身是Jquery FlexiGrid插件,我们重构了FlexiGrid的大部分Javascript代码,使其工作的更有效率,BUG更少;同时将其封装为dotNet控件,提供了简单易用的使用方式。2010-09-09
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
这篇文章主要介绍了jQuery添加新内容的四个常用方法,结合实例形式分析了jQuery元素添加append,prepend,after,before四种方法的功能与相关使用技巧,需要的朋友可以参考下2019-03-03


最新评论