3.提示“C-Lodop未准备好”或“WebSocket没准备好”
 
问题一:提示"WebSocket没准备好,点确定继续"..
原因:调用打印语句(print或preview等)时机太早,在页面第一次加载完成后有几百毫秒时间等待WebSocket通讯服务准备完成。

解决方法有三种:
方法一:等待C-Lodop准备好再执行
调用打印方法打印,详见样例22

方法二:设置时间延迟执行,例如

方法三:提前自行判断一下之后再打印,自行判断方法如下:
if (LODOP.webskt && LODOP.webskt.readyState==1){ 准备好} else {没准备好}


问题二:提示“C-Lodop没准备好”
可能原因:
1.调用C-Lodop云打印时机太早
解决方法:在页面加载完之后调用打印,也可以用如下方法提前判断自行处理:
if (!LODOP && document.readyState!=="complete") {没准备好} else {...}
2.采用了https协议与目前C-Lodop云打印普通协议不相配,建议使用新版适合https的C-lodop云打印。
适合https的C-lodop云打印下载: http://www.c-lodop.com/download.html
或在https中调用http资源:
相关资料:如何在HTTPS里调用HTTP资源不出现提示框
http://it.cha138.com/javascript/show-5465836.html
允许https页面里嵌入http资源
http://eyehere.net/2015/allow-insecure-content-on-secure-pages/
3. edge浏览器,正常情况下访问web服务没有问题,访问本地超文本文件打印时会提示"C-Lodop未准备好",原因:edge作为Windows应用程序与IE不同,因此出于安全考虑默认是网络隔离。为了解决这个问题,我们需要使用cmd命令修改安全策略来解决。
  对于edge 10158版后的执行如下语句:
    CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe
  如果有“无效的参数错误”提示执行如下语句:
    CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
  对于更早的edge历史版本,执行如下语句:
    CheckNetIsolation LoopbackExempt -a -n=Microsoft.Windows.Spartan_cw5n1h2txyewy
如下图: