繁体   English   中英

如何为超大插件向PHP数组添加类

[英]How to add a class into php array for Supersized plugin

我想将class =“ lazyload”添加到此PHP块生成的缩略图(而非图像)中,该PHP块允许Supersized插件( http://buildinternet.com/project/supersized/ )从文件夹中自动检测图像和缩略图,但我不知道该怎么做:

<?php
$directory = "../../photo-locations/riviera/photo/";
$directory_thumbs = "../../photo-locations/riviera/thumb/";
$images = glob($directory . "*.jpg");
$images_thumb = glob($directory_thumbs . "*.jpg");
$images_final = array_combine($images,$images_thumb);
$number = count($images);
$start = 0;
foreach($images_final as $image => $key)
{ echo "{image : ' $image ', title : 'Riviera' , thumb : '$key' }";
if ($start < $number - 1)
echo ", ";
$start = $start + 1;
}
?>

超大插件是一个全屏图片库,很遗憾,它没有提供延迟的拇指加载。 我还试图找到一个很好的延迟加载脚本,该脚本可以仅通过类而不是与data-src或data-srcset属性结合使用来处理图像(在这种情况下为缩略图)-该插件未使用该属性。 拜托,有人知道吗? 谢谢!

您可以使用JQuery做到这一点。 似乎所有缩略图都以thumb为前缀:

<li class="thumb1">
  <img src="http://.../img1.jpg">
</li>
<li class="thumb2">
  <img src="http://.../img2.jpg">
</li>

因此,您可以轻松地执行以下操作:

$("li[class^='thumb']").addClass( "lazyload" );

这也可能适用于您的lazyloading插件,假设要调用的函数是lazyload()

你可以 :

$("li[class^='thumb']").lazyload()

然后启动/初始化您的延迟加载插件。 但是您确定Supersized插件不会预先加载自己的照片吗?

如果不起作用,您最好的选择是:

  • 扩展插件(如果可能)
  • 直接修改库(请注意,如果您升级版本)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM