我目前正在制作一个交互式的照片地图,使用prettyPhoto在单击地图上的点时显示图片。一些点将显示1张照片,而其他点将显示多张照片。如果只使用一张照片,我的所有内容都可以正常工作,但现在我正在调整呼叫那些具有多张照片的照片,但我遇到了一个问题,无法进行prettyPhoto api调用。这是我的当前代码:
$(document).ready(function(){
var baseUrl = "http://ninjastatus.com/last_stop/Bronx/"
var checkMultiple = function (stop) {
if (stop.imgName && stop.imgName.match('|')) {
var images = stop.imgName.split('|');
for (var i = images.length - 1; i >= 0; i--) {
images[i] = baseUrl + images[i].replace('\t\n', '').trim();
};
return images;
}
if (stop.imgName && stop.imgName.replace('\t\n', '').trim() !== undefined) {
var images = baseUrl + stop.imgName.replace('\t\n', '').trim();
return images;
}
}
for(var i=0; i<stations.length; i++){
var loc = stations[i].loc;
var name = stations[i].name;
var imgs = checkMultiple(stations[i]);
var desc = "test description";
$('#subway').append('<a href="#" alt="' + name + '" title="' + name +
'" onclick="$(this).prettyPhoto(imgs,name,desc); return false;">
<area shape="circle" coords="' + loc + '" nohref="nohref" /></a>');
}
$('img[usemap]').rwdImageMaps();
})
我发现onclick行出现了无效字符错误。我知道从stations变量传入的所有数据都是正确的,问题在于prettyPhoto调用本身。有没有一种方法可以使用普通的jquery click函数来保留每个链接的正确变量,同时实现此操作?或者最好使用html数据属性,并编写一个jquery click函数来提取这些属性并调用prettyPhoto?您可以在此处找到prettyPhoto api文档:http://www.no-margin-for-errors.com/projects/prettyphoto-jquery-lightbox-clone/documentation。 您还可以在此处找到该页面:http://adminref.com/NYCPhotoMap/index.html。
\n
或添加' + '
。 - Rudie