如何检查用户的浏览器是否支持Google Caja?

时间:2015-11-02 05:02:25

标签: google-caja

我正在使用Google Caja来清理我网站上的用户输入。我正在处理我传递给caja.whenReady()的回调中的用户输入。但是,在Microsoft Edge上,从不调用回调,因为Caja无法使Edge成为安全。如果Caja不起作用,我想回到处理用户的内容服务器端,我将简单地删除所有JavaScript。

如何检查Caja是否适用于用户的浏览器?

1 个答案:

答案 0 :(得分:0)

下面的代码会为您提供一个函数browserSupportsCaja(),它会在Caja调用whenReady()回调后随时返回true。这样,您可以在初始化后确定Caja是否受支持。

如果在完成初始化之前检查Caja支持,那么您将得到假阴性。要理解这一点,只需在Caja准备好whenReady()回调之后放置您想要执行的代码,并假设Caja在其他任何地方都不可用。

caja.initialize({
  cajaServer: 'https://caja.appspot.com/'
});

function browserSupportsCaja() {
  return browserSupportsCaja.return_value;
}
browserSupportsCaja.return_value = false;

caja.whenReady( function() {
  browserSupportsCaja.return_value = true;
});