如何通过列表中的javascript访问易趣物品的ID?

时间:2014-05-07 17:54:37

标签: javascript ebay

我们有一个小的javascript片段,作为我们的易趣物品描述的一部分运行。该代码段需要易趣item id

在测试中,我发现有一个变量ebayItemId,这似乎是合适的。但是,如果用户首先导航到项目页面(例如直接链接)而不首先导航到其他易趣页面,则该变量不存在。

是否有任何官方/最佳方式来访问商品ID,或者我应该从DOM中读取它?


详细说明ebayItemId变量。我通过打开一个新的私人浏览器并直接导航到该项目的页面进行测试。有趣的是,只要该项目的页面不是第一个要加载的易趣页面,即使强制完全重新加载(Ctrl-F5),它也能正常工作。

2 个答案:

答案 0 :(得分:1)

在新浏览器中打开的情况下失败的主要原因是ebay奇怪的行为是通过iframe呈现您访问的第一个项目页面的项目描述而不是,但直接在他们自己的DOM中进行了解析。< / p>

在这种特殊情况下,这些javascript变量未预设,因此您无法访问它们。

一个小小的解决方法是直接从项目页面本身读取项目编号/项目ID(通过使用普通的javascript)。这不是一个简洁的解决方案,但应该有效。

你可以做到,例如像这样涵盖两种情况:

var resolvedItemID = 
    typeof ebayItemID !== 'undefined' ? 
    ebayItemID : document.getElementById('descItemNumber') ? 
    document.getElementById('descItemNumber').innerText : null;

if(resolvedItemID) {
    ... your code ...
}

答案 1 :(得分:0)

您使用的是经典的Ebay API吗?如果是这样,我认为你应该查看文档,你可以使用很多有趣的功能:

http://developer.ebay.com/DevZone/finding/CallRef/index.html