我有一个网站,我在其中使用 javascript 和pannellum API 来加载多个 360 全景视图。
浏览器偶尔会崩溃,尤其是在我的 iPhone 6 上处于 VR 模式时,不同的 DIV 中总共需要六个 pannellum 实例。
据我所知,浏览器在调用 pannellum 时崩溃,这是我从 eval 函数内部进行的,因为我传递给 pannellum 的数据包含在变量中。
这是调用,以及让我们知道全景图已加载的后续行。
eval("RightPanoInt=pannellum.viewer('RightPanoIntermediary', " + PanoDataIntermediary +");");
RightPanoInt.on("load", function() { LoadedRightPanoIntermediary(); });
在哪里
RightPanoInt 是一个变量,我可以用来检查全景图是否已加载
RightPanoIntermediary 是要加载全景图的 DIV 的 ID。
和
PanoDataIntermediary 是一个变量,其中包含 pannellum API 所需的数据/参数。
例如
{"autoLoad": true,"pitch": 0,"yaw": 73,"vaov": 180,"haov": 360,"vOffset": 0,"maxPitch": 90,"minPitch": -90, "maxYaw": 180,"minYaw": -180,"maxHfov": 100,"hfov": 100,"minHfov": 10,"showFullscreenCtrl": false,"orientationOnByDefault": false,"showControls": false,"全景":"002.jpg","preview":"BackgroundPaleGreen.jpg"}
下次调用时数据会有所不同,因此参数必须在 PanoDataIntermediary 变量中。
我可以使用 eval 函数的哪些替代方法进行相同的调用?