单击IE / Edge

时间:2019-03-18 11:16:15

标签: reactjs internet-explorer share linkedin microsoft-edge

我在ReactJS应用中使用了LinkedIn的以下共享插件:

<script src="https://platform.linkedin.com/in.js" type="text/javascript">lang: en_US</script>
<script type="IN/Share" data-url="https://www.linkedin.com"></script>

来自LinkedIn文档:https://docs.microsoft.com/en-us/linkedin/consumer/integrations/self-serve/plugins/share-plugin

在Chrome / Firefox / Safari上可以正常使用。但是,单击LinkedIn共享按钮(由上述脚本生成)后,出现LinkedIn共享弹出窗口,并且我的应用程序控制台出现错误,提示:

  

[对象错误]:{说明:“ [Messenger]必需属性'target'   未提供”,消息:“ [Messenger]必需属性'target'   未提供“,nr @ seenError:true,堆栈:” Error:[Messenger]   匿名函数未提供必需的属性“目标”   (https://platform.linkedin.com/xdoor/scripts/in.js:7:55143)在   t处的Array.prototype.forEach(本机代码)   (https://platform.linkedin.com/xdoor/scripts/in.js:7:54936)在e   (https://platform.linkedin.com/xdoor/scripts/in.js:7:56462)在e   (https://platform.linkedin.com/xdoor/scripts/in.js:7:34661)的价值   (https://platform.linkedin.com/xdoor/scripts/in.js:18:23834)在s   (https://platform.linkedin.com/xdoor/scripts/in.js:18:38221)在   包装器   ([MY_SITE_LINK_ADDRESS]:9:16587)“}

注意:我隐藏了[MY_SITE_LINK_ADDRESS]。

1 个答案:

答案 0 :(得分:0)

这里的问题似乎是您依赖于插件的JS,CSS和HTML来处理每个浏览器。看一看:这是其他人在2018年发帖时遇到的相同问题,Issue on IE with LinkedIn Share plugin。而且,officially from LinkedIn,如果您希望此插件正常工作,则需要让您的用户这样做:

  1. 打开Internet Explorer。
  2. 单击工具,然后选择兼容性视图设置。
  3. 取消选中“在兼容性视图中显示所有网站”旁边的框。
  4. 点击关闭。

要求用户重新配置其浏览器只是为了能够单击您网站上的一个按钮是合理的吗? 答案:否。

您不需要依靠LinkedIn共享插件。您真正需要的只是...

https://www.linkedin.com/sharing/share-offsite/?url={url}

然后确保跨浏览器可以使用。

来源: Microsoft LinkedIn Share URL Documentation

当然,每个人都说:不要重新发明轮子!我完全同意!但是,当您发现有方形,方形车轮的汽车时,也许您想重新考虑!

如果您对定期维护的GitHub项目感兴趣,可以跟踪该项目,而不必这样做,请查看! Social Share URLs

Social Share URLs Image