我的应用程序允许用户将GeoJSONs导出为.json文件...下载在Chrome和Firefox中运行正常,但在Safari中,用户将被定向到包含data:text/ + GEOJSON STRING
的网址和GeoJSON的文本在页面上呈现 - 根本没有下载。
$('#export_table > tbody > tr > td').each(function(){
geoObject = JSON.parse($(this).html());
layerName = geoObject.name;
exportRowToGeoJSON($(this).html(), layerName);
});
function exportRowToGeoJSON(storageObj, fileName){
dataStr = "data:text/json;charset=utf-8," + encodeURIComponent(storageObj);
link = document.createElement('a');
link = document.body.appendChild(link); //FOR FIREFOX
link.setAttribute("href", dataStr);
link.setAttribute("download", fileName + ".json");
link.click();
};
因此,Safari不会像在其他浏览器中那样触发href
datasStr
的下载,而是将href
属性视为要链接的网址。
我可以通过Chrome,Firefox和Safari正常运行吗?
答案 0 :(得分:-2)
如您所见,您必须使用10.1以下的Safari版本,对吗?是这样,我建议您更新浏览器,或切换到Chrome,Firefox或Opera。
Safari中任何低于10.1的版本都不支持HTML5属性/标记,这就是某些网站需要和更新浏览器的原因。