0

我正在查看 Google 提供的 API,我需要将它翻译成 jQuery,所以我做到了。在 Google 的代码中,Google 定义了创建的元素,但它可以在没有在 jQuery mobile 中定义它们的情况下工作。我是编程新手,所以我不确定这是否重要?该代码在控制台日志上没有错误,无需定义。

谷歌:

google.maps.event.addListener(panoramioLayer, 'click', function(photo) {
    var li = document.createElement('li');
    var link = document.createElement('a');
    link.innerHTML = photo.featureDetails.title + ': ' +
       photo.featureDetails.author;
    link.setAttribute('href', photo.featureDetails.url);
    li.appendChild(link);
});

jQuery:

google.maps.event.addListener(panoramioLayer, 'click', function(photo) {
    $(document.createElement("a")).html("photo.featureDetails.title + ': ' + photo.featureDetails.author");
    $("a").attr("href", photo.featureDetails.url);
    $("li").append("a");
});
4

2 回答 2

1

正确的转换应该是这样的:-

google.maps.event.addListener(panoramioLayer, 'click', function(photo) {
    var anchor=$("<a/>").html(photo.featureDetails.title + ': ' + photo.featureDetails.author).attr("href", photo.featureDetails.url);
    $("<li/>").append(anchor);
});
于 2012-12-29T19:14:43.083 回答
1

像这样的东西应该工作:

google.maps.event.addListener(panoramioLayer, 'click', function(photo) 
{
    var $link = $(document.createElement("a")).html(photo.featureDetails.title + ': ' + photo.featureDetails.author);
    $link.attr("href", photo.featureDetails.url);
    $("<li/>").append($link);
});

您需要存储创建的链接标签,这样您就不会更改所有标签的href

于 2012-12-29T19:18:32.370 回答