我想尊重所有浏览器中仅使用javascript的DNT设置(我没有服务器端访问主机服务器的权限)。我从https://stackoverflow.com/a/16947583/266960得到了以下信息
var isDNT = navigator.doNotTrack == "yes" || navigator.doNotTrack == "1" || navigator.msDoNotTrack == "1";这适用于所有浏览器,但IE11 (特别是11.0.9600.16428通过[http://spoon.net/]运行),它似乎不符合上述任何BOM属性(我尝试通过Internet Options > Advanced >Security设置DNT首选项:“始终发送不跟踪报头”,并通过安全>打开跟踪保护)。
其他人是否可以确认这是正确的(即IE11中的bug ),或者建议只使用JS方法来检测这些设置?
蒂娅·本
发布于 2014-06-11 05:38:57
根据这个answer from Microsoft:“标准已经更新”,从IE11开始,将doNotTrack属性放在window对象上。
并不是所有的浏览器都是最新的,只有IE11和Safari 6.1.1+已经按照这个window properties table进行了更新。
在本文撰写之时,有一个来自Mozilla的当前disagreement/discussion,关于doNotTrack应该是窗口还是导航器属性。
发布于 2014-05-29 12:59:52
您试过使用window.external.msTrackingProtectionEnabled()吗?它返回布尔值,在IE9/10中实现。我现在无法测试,但IE11可能也支持它。
http://ie.microsoft.com/TEStdrive/Browser/DoNotTrack/Default.html
https://stackoverflow.com/questions/23933650
复制相似问题