拍摄并显示图像

时间:2012-08-22 19:16:42

标签: javascript jquery flash gallery ebay

我想知道如何实现这一目标。

我需要从外部链接站点获取所有图像并将其显示在其他站点中。没有jQuery是可行的吗?使用简单的javascript或flash?

任何人都可以提出一些教程或其他内容吗?

如果是javascript,那么它必须是非常简单的代码,因为我想让它在eBay列表中运行。

示例:在列表中将出售XXX手机的持有者,我想在底部放置一个幻灯片或类似的完全相同的项目(来自同一类别)。我想给它一个功能,所以我只需要更改类别的链接,图片会自动更改。更多钞票?

谢谢,

如果我没有说清楚,请问,我会更详细地解释。

1 个答案:

答案 0 :(得分:5)

注意:请求者表示此答案不适用于EIDE内容清单。
除此之外,它运作良好,它会激怒一些'网络开发者'(LOL)。我现在暂时把它留在这里。

我有一个偷偷摸摸的怀疑,你没有拥有/控制外部链接网站,因此'从外部链接网站获取所有图像并在其他网站上显示它们'(如问),将属于跨域安全性限制。

因此,为了重新获得“用户权力”,只需使用http://query.yahooapis.com/ 不会严格要求jQuery。

示例1:
使用类似SQL的命令:

select * from html 
where url="http://stackoverflow.com" 
and xpath='//div/h3/a'

以下链接将搜索SO以获取最新问题(绕过跨域安全公牛$!!7):
http://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20html%20%0Awhere%20url%3D%22http%3A%2F%2Fstackoverflow.com%22%20%0Aand%20xpath%3D%27%2F%2Fdiv%2Fh3%2Fa%27%3B&format=json&callback=cbfunc

正如您所看到的,这将返回一个JSON数组(也可以选择xml)并调用回调函数:cbfunc

在您的情况下,您可以捕获图像链接并将其包含在您的页面中。

示例2:
正如下面的评论中所述,纯JavaScript中的示例不仅从Ebay商店获取 image-url的,而且还获取 product-title的< / em>和产品网址(将它们显示为带有产品标题作为图像标题的超链接图像)。因此,它还显示了如何动态构建yql-string以及如何处理返回的数据。

function cbfunc(json){
   if(json.query.count){
      var data=json.query.results.div;
      var i=0, l=data.length, htm='';
      for(;i<l;i++){
         htm+='<a href="'+data[i].a.href+'">' +
                 '<img title="'+data[i].a.img.title+'"' +
                       ' src="'+data[i].a.img.src+'">' +
              '</a>\n';
      }
      document.getElementById('output').innerHTML=htm;
   } else {
      alert('Error: nothing found'); return false;
   }
}

function fetchEbayStore(url){
   var yql="select a.href, a.img.src, a.img.title" +
           " from html" +
           " where url='" + url + "'" +
           " and xpath='//td/div[@class=\"image\"]'";
   yql="http://query.yahooapis.com/v1/public/yql?q=" +
       encodeURIComponent(yql) +
       "&format=json" +
       "&callback=cbfunc";
   getJSON(yql); //you need to provide getJSON or use a library
}

请参阅this 'quick 'n dirty' jsfiddle以查看上面的示例。请记住,这只是为了解释,而不是生产!

欲了解更多信息:阅读雅虎的yql - 文档,请参阅constructor右侧的实时示例。