0

这是我想要做的

我有一个带有大量图像的 jQuery UI 对话框,如下所示

<td><a id='ai42' class='ancico' title='Key'><img/></a></td>
<td><a id='ai52' class='ancico' title='Last'><img/></a></td>
<td><a id='ai62' class='ancico' title='Lock'><img/></a></td>

我想避免为每个图像指示完整的 CDN url - 导致保存数百字节。所以我正在做的是:

在我所做的对话框的 create: 事件中

$('.ancico').each(function(ndx,anc){adjustSourceTo(ndx,anc);});

adjustSourceTo 代码是这样的

function adjustSourceTo(ndx,anc)
{
 var sources = new Array('noicon','alert','arrow-d','arrow-l','arrow-r','arrow-u','back',
 'check','delete','forward','gear','grid','home','info','minus','plus',
 'refresh','search','star','address','clock','email','ffwd','first','key',
 'last','lock','next','phone','prev','record','redo','rewind',
 'trolley','unlock')
  var isrc = sources[ndx];             
  var src = 'http://url_to_cdn/images/{src}.png'.format({src:isrc}); 
  console.log($(anc).attr('src',src).attr('src'));
 }

我可以看到生成的 URL 是正确的,单击日志输出会将我带到图像。但是,当打开对话框时,图像仍然是顽固的空白。我认为这可能是由于我未能为初学者指定占位符图像,所以我尝试将我的 HTML 标记更改为

<img src='i.png'/> 

但无济于事 - 现在带有图像的锚点出现了,但被我的服务器提供的 i.png 卡住了,而不是来自 CDN 的真实文件。

如果我能做到这一点,应用程序负载的节省将是显着的 - 我非常感谢任何能够告诉我我可能做错了什么的人。

4

0 回答 0