我们将.fancybox()
用于产品映像和相当大的(所有图像)。
它在桌面和iPads上运行良好。
只有在iPhone上,产品映像是可以的,但是太小了,无法读取。
问题是:
发布于 2014-10-17 09:42:11
对于希望在特定屏幕大小上禁用fancybox的客户端,我通常做的是
width
大于480
,我将允许图像在fancybox中打开,否则将以普通图像的形式打开。fancybox
如下所示:
图01
..。在本例中,我使用的是类modal
,这样就可以操作元素。width
,并动态地向我的modal
选择器添加或删除fancybox
类(它应该在fancybox初始化脚本之后运行)如下:
当屏幕大小> setfancybox值函数checkScreen() { screenWidth = window.innerWidth;if (screenWidth > setfancybox) { //模式元素应在fancybox (!jQuery(".modal").hasClass(" fancybox ")) {jQuery(“.modal”).addClass(“fancybox”)中打开;}{ if (jQuery(".modal").hasClass("fancybox")) { jQuery(".modal").removeClass("fancybox");}}jQuery(Document).ready(函数( $(".fancybox").fancybox();checkScreen();});//就绪checkScreen()
的大小(更改了方向!?),您可以选择再次运行window
函数。所以你可以:
$(Window).resize(函数() { clearTimeout( _resize );_resize= setTimeout (函数() { checkScreen();},500);// setTimeout });
.注意到,我们使用setTimeout
/clearTimeout
来避免函数在resize
进程中运行几次,但直到它停止为止。它还假设您以前将_resize
变量声明为全局变量。请参阅JSFIDDLE
https://stackoverflow.com/questions/26419940
复制相似问题