Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
嵌入Amazon推荐Javascript小部件时出现Javascript错误_Javascript_Typeerror_Amazonads - Fatal编程技术网

嵌入Amazon推荐Javascript小部件时出现Javascript错误

嵌入Amazon推荐Javascript小部件时出现Javascript错误,javascript,typeerror,amazonads,Javascript,Typeerror,Amazonads,我试图在我的网站上嵌入一个amazon推荐小部件,但控制台中出现以下错误,小部件显示为带和空框: dynscript-1.js:1 Uncaught TypeError: Cannot read property 'addEventListener' of null at Object.d.addEventHandler (dynscript-1.js:1) at Object.e.trackFormSubmission (dynscript-1.js:1) at Obj

我试图在我的网站上嵌入一个amazon推荐小部件,但控制台中出现以下错误,小部件显示为带和空框:

dynscript-1.js:1 Uncaught TypeError: Cannot read property 'addEventListener' of null
    at Object.d.addEventHandler (dynscript-1.js:1)
    at Object.e.trackFormSubmission (dynscript-1.js:1)
    at Object.e.renderSearchBar (dynscript-1.js:1)
    at Object.e.render (dynscript-1.js:1)
    at o (dynscript-1.js:1)
    at Object.d.init (dynscript-1.js:1)
    at Object.e.init (dynscript-1.js:1)
    at dynscript-1.js:1
    at h (onejs?MarketPlace=US&adInstanceId=87884aaa-94ab-4393-895a-ebfe6886f93b&storeId=xxxxxx-20:1)
    at Object.m.execBodyScripts (onejs?MarketPlace=US&adInstanceId=87884aaa-94ab-4393-895a-ebfe6886f93b&storeId=xxxxxx-20:1)
页面中的代码:

<script src="//z-na.amazon-adsystem.com/widgets/onejs?MarketPlace=US&
adInstanceId=a830e6a0-c6c1-4f0a-84ab-0e2dc445ff9d&storeId=xxxx-20"></script>

更新:我发现当你把亚马逊原生购物广告代码放在表单HTML标签中时,它不会运行,我找不到解决方法。关于这件事,有一些讨论很平静,但都没有任何好的解决办法。有人建议将代码放在一个单独的html和一个iframe中,但对于依赖基于页面内容的服务相关广告的上下文广告来说,这是一个糟糕的解决方案


*我用xxxx替换了原始的storeId id,您可以尝试创建一个动态的
脚本
标记,并用javascript将其添加到头部。这样至少可以加载他们的资源。由于装载顺序的原因,仍然可能存在一些错误

var amzScript = document.createElement('script');
amzScript.src = "//z-na.amazon-adsystem.com/widgets/onejs?MarketPlace=US&adInstanceId=a830e6a0-c6c1-4f0a-84ab-0e2dc445ff9d&storeId=xxxx-20";
var head = document.querySelector('head');
head.appendChild(amzScript);

您可以尝试创建一个动态
脚本
标记,并使用javascript将其添加到头部。这样至少可以加载他们的资源。由于装载顺序的原因,仍然可能存在一些错误

var amzScript = document.createElement('script');
amzScript.src = "//z-na.amazon-adsystem.com/widgets/onejs?MarketPlace=US&adInstanceId=a830e6a0-c6c1-4f0a-84ab-0e2dc445ff9d&storeId=xxxx-20";
var head = document.querySelector('head');
head.appendChild(amzScript);

在深入研究之后,我发现如果禁用搜索栏功能,代码将在表单标记中工作。但是您必须使用自己初始化变量值的代码

您可以通过添加以下行来完成此操作:

amzn_assoc_search_bar = "false";

在深入研究之后,我发现如果禁用搜索栏功能,代码将在表单标记中工作。但是您必须使用自己初始化变量值的代码

您可以通过添加以下行来完成此操作:

amzn_assoc_search_bar = "false";

该错误与http无关。小部件是否需要其他脚本?当小部件未包含时,您没有错误?@SergChernata这是Amazon associates提供的唯一嵌入页面的代码。没有小部件我不会出错。这是否在某个地方存在?@SergChernata问题是,由于某种原因,代码在标记中时不会运行。我只是把它放在一个普通的HTML页面中,它可以工作,但是当它放在一个表单标签中时就不行了。找不到绕过它的方法。我在ASPX页面中使用它,因此需要一个表单标记。错误与http无关。小部件是否需要其他脚本?当小部件未包含时,您没有错误?@SergChernata这是Amazon associates提供的唯一嵌入页面的代码。没有小部件我不会出错。这是否在某个地方存在?@SergChernata问题是,由于某种原因,代码在标记中时不会运行。我只是把它放在一个普通的HTML页面中,它可以工作,但是当它放在一个表单标签中时就不行了。找不到绕过它的方法。我在ASPX页面中使用它,因此需要一个表单标签。谢谢,我通过禁用搜索栏功能找到了一个干净的解决方案。我自己回答了这个问题,谢谢你的帮助。谢谢,我通过禁用搜索栏功能找到了一个干净的解决方案。我自己回答了这个问题,谢谢你的帮助。