本技术资料版权所有,禁止分发.©(2003-2007),重庆软航科技有限公司,保留所有权利.NTKO和软航是软航科技的商标

NTKO OFFICE文档控件技术资料

在Chrome 55及以上版本无法通过控件对象.属性=值的方式设置控件对应属性


创建时间:03/31/2017 10:32:13 AM 修改时间: 10/13/2017 05:57:50 PM
分类:BS开发-常见问题, BS开发-开发技巧
适应版本号:4,0,6,X

相关文档:本文档没有相关文档

问题表现: 在Chrome 55及以上版本使用文档控件时通过控件对象.FileSave=false 这样的控件对象.属性=值的方式设置属性 不成功

原因与处理方法:
此现象可能与Chrome本身原因引起的,针对此种情况,需要使用新的平台版文档控件版本结合新的跨浏览器插件使用。并在获取控件对象之后的添加如下代码:
如:
function init(){//获取文档控件对象dd

TANGER_OCX_OBJ = document.getElementById("nacl_module");

// 判断chrome的版本是否大于54,若大于54,使用代理解决问题
var brower;
var regStr_Chrome = /chrome\/[\d.]+/gi;
var agent = navigator.userAgent.toLowerCase();
if( agent.indexOf("chrome") > 0 )
{
brower = agent.match( regStr_Chrome );
}

var verinfo = ( brower + "" ).replace(/[^0-9.]/ig,"");
var uVerinfo = parseFloat( verinfo );
if( uVerinfo > 54 )
{
TANGER_OCX_OBJ = new Proxy( TANGER_OCX_OBJ, {
set: function (target, key, value, proxy) {
var func = target["setattribute"];
var args = new Array();
args[0] = key;
args[1] = value;
return ( Reflect.apply(func, target, args) );
},

get: function(target, key, proxy) {
var value = target[key];
if(typeof value == 'function') // 为函数
{
return function(...arguments) {
return Reflect.apply(value, target, arguments);
};
}
else
return( value );
}
});
}

index_win.html


返回页面顶部↑  
本文档的相关文档:

本文档没有相关文档