问题描述:
写好的jsp文件部署到环境上,可以正常显示,当使用客户端嵌入web端页面的时候html和css可以展示却没有数据。
问题排查,
(1)看看客户端的控制台,其实是有办法的,但由于客户端版本的问题不行。
(2)找客户端大佬看日志是不是客户端拉取或者请求的问题。像这个项目在一个项目里加一俩个页面是只有当前页面出不来,一般不是这个情况。
(3)看js执行了没,使用在首行js,alert弹出下无效,有可能是客户端不支持这个方法(实际是客户端支持这个方法),换一个隐藏元素的方法。结果:无效。
(4)可能是客户端有特殊的执行环境。使用window.onload ,documnet.onready,$(function(){})包裹。结果:无效。
(5)可能是js加载的问题,加上type="text/javascript",加上defer,将js抽离出来在导入(项目中的其他项目是这这样)。结果:无效。
(6)可能是预加载的问题。将js替换为改变元素样式的单行js。结果:可以改页面,替换一半js,再减半,找到错误。结果:确定为语法不兼容。
总结:客户端会根据本地的chrome浏览器内核去预加载,内嵌网页,预加载中的js报错会舍弃整个js文件。正常情况下js出错,执行会卡在报错的地方,前面执行就执行了,css和html报错编辑器就可以发现。