我有一个产品搜索显示缩略图,并提供当前结果集的缩放视图(1-24个结果)。
在Coldfusion中我正在做这个来创建低分辨率和高分辨率图像:
<cfimage name="myImage" source="#bildpfad##bilddateiname#" action="read" />
<cfif IsImage(myImage) is true>
<cfscript>
variables.breakdown = "";
variables.lastcount = 0;
</cfscript>
<!--- low res --->
<cfscript>
ImageSetAntialiasing(myImage,"on");
variables.breite = ImageGetWidth(myImage);
variables.breite = 240;
ImageScaleToFit(myImage, variables.breite,"");
</cfscript>
<cfxml variable="imageXml">
<cfimage action="writetobrowser" source="#myImage#" />
</cfxml>
<cfset variables.imageSrc = imageXml.xmlRoot.xmlAttributes.src>
<!--- hi res --->
<cfscript>
variables.breite = 900;
ImageScaleToFit(myImage, variables.breite,"");
</cfscript>
<cfxml variable="imageXmlXL">
<cfimage action="writetobrowser" source="#myImage#"/>
</cfxml>
<cfset variables.imageSrcXL = imageXmlXL.xmlRoot.xmlAttributes.src>
<cfoutput><div class="resultsImgWrap">
<a href="#variables.imageSrcXL#">#imageXml#</a></div>
</cfoutput>
虽然这可以很好地同时创建缩略图和缩放图像,但需要一段时间来处理......
所以我想知道Coldfusion中是否存在类似懒惰加载器的功能,它会立即显示缩略图并在后台创建缩放图像。
问题:
不知道这样的事情是否可行?或者如果有更好的方法,我也不介意。
感谢指点!
答案 0 :(得分:2)
您可以调整一次大小(就像上传/添加图片后一样),并始终使用该缩略图。这将是我的选择。
至于延迟加载......你需要某种能够执行ajax图像加载的JavaScript插件。每个img src都可以是getThumnail.cfm?id=x&w=200&h=200
。您也可以在CF侧缓存已调整大小的缩略图。