events元素官方说明文档

events元素官方说明文档

<events>

更新 2018.3.28 krpano 1.19 pr15

krpano事件 – 当特定事件调用时可以执行action或指定的功能。

有两种类型的事件:

全局krpano事件

一个不具有name属性的 <events> 元素定义的事件都是全局事件。通常只有一个全局事件。当有另一个 <events>标签定义相同的事件时,之前定义的同一事件就会被覆写。

注意 – 当载入另一个xml文件或其他场景时,所有全局事件将保留,它们不会发生改变,除非在新的xml文件或场景中被再次定义。

独立局部krpano事件

一个具有name属性的 <events> 元素定义的事件都是独立事件。
它可以包含所有类型的事件,但它们不会覆写全局事件,它们是另外进行调用的。
这些被“命名”的<events>元素同样具有keep属性(默认值为false)。这意味着没有keep=”true”<events>元素在新全景载入时将会被自动移除。

提示 – 被命名的事件能够在不影响其他插件或xml代码的基础下在独立的插件和代码中发生作用。

<events onenterfullscreen=”” 		'进入全屏时调用该事件。'
		onexitfullscreen=””	'从全屏模式返回到普通窗口模式时调用该事件。'
		onxmlcomplete=””	'当新的场景要载入时调用,与onxmlcomplete相似,但只用于scene。'
		onpreviewcomplete=””	'当预览图载入完成时调用该事件。'
		onloadcomplete=””	'当全景图像载入完成时调用。 当使用多分辨率图像,当前视角所有图像载入完毕时调用'
		onnewpano=””		'当有一个新的全景图载入并且其view参数 (type, imagesize, hfov, vfov) 可用时调用。'
		onremovepano=””		'当前全景图移除后调用该事件(发生在新的全景图载入之前)。'
		onnewscene=””		'当新的场景要载入时调用,与onxmlcomplete相似,但只用于scene。'
		onxmlerror=””		'发生错误,说明下方'
		onloaderror=””		'发生错误,说明下方'
		onkeydown=””		'按键信息存储在keycode变量中。说明下方'
		onkeyup=””		'当一个按下的按键被释放时调用该事件。释放的按键信息存储在keycode变量中。'
		onclick=””		'当有鼠标点击全景图时调用该事件。'
		onsingleclick=””	'检测单击的特殊事件。'
		ondoubleclick=””	'检测双击的特殊事件'
		onmousedown=””		'当有鼠标在全景图上按下时调用该事件。'
		onmouseup=””		'当有鼠标释放时调用该事件。'
		onmousewheel=””		'当使用鼠标滚轮时调用该事件。'
		oncontextmenu=””	'当右键菜单要打开的时候调用该事件,可用于修改右键菜单条目(例如在显示之前更改显示的文字和点击动作)以匹配当前的情形和需要。'
		onidle=””		'当没有用户交互并且经过idletime的秒数之后时调用该事件。'
		onviewchange=””		'在最终渲染完成之前或当前视角发生变化时调用。'
		onviewchanged=””	'当前视角发生改变并且渲染完成时调用该事件。注意 – 该事件的使用可能会影响渲染的品质和浏览的速度!'
		onresize=””		'当屏幕窗口发生变化或者area尺寸发生改变时调用该事件。'
		onautorotatestart=””	'当自动旋转开始时调用该事件。'
		gyro_onavailable=””			''
		gyro_onunavailable=””		''
		gyro_onenable=””			''
		gyro_ondisable=””			''
		webvr_onavailable=””		''
		webvr_onunavailable=””		''
		webvr_onunknowndevice=””	''
		webvr_onentervr=””			''
		webvr_onexitvr=””			''

/>

onloaderror =“” onxmlerror = “” 当发生载入错误时调用以下事件:

当xml加载或解析错误时调用onxmlerror事件。
当图像加载错误(所有类型的图像包括全景图、layer或热点图)时调用onloaderror事件。
如果没有设置这些事件,则会执行默认的错误处理 –
也就是说如果是xml解析错误则会出现致命错误信息,如果是图像加载错误则在krpano信息窗口中显示。
使用onxmlerror事件以及一些自定义错误处理,在遇到xml错误时仍然可以继续使用viewer
错误信息将会存储在lasterror变量中。

注意 – onxmlerror事件只能在html5 viewer中使用!

onkeydown 当有键盘按键被按下时调用该事件。

当有键盘按键被按下时调用该事件。 按键信息存储在keycode变量中。
当一个按键持续按下时,则系统会自动发送重复的onkeydown事件。可以使用control.keydownrepeat来屏蔽。

onsingleclick ondoubleclick 检测单击和双击的特殊事件。

检测单击和双击的特殊事件。
与普通的onclick事件不一样(触发是即时的),onsingleclick事件的触发可能会延时一点(最多延时400毫秒),因为它需要检查是否有第二次点击这样就是作为双击事件看待。
所以有以下的情况: 一次单击事件(与普通onclick事件相比稍为延时一点触发) 两次单击事件 – 两个点击之间的距离鼠标移动得太远。
一个双击事件 – 两个点击之间的时间间隔非常短,且鼠标几乎没有任何移动。
mouse.clickxmouse.clicky变量存储了最新一次的鼠标点击坐标。 同样支持触屏应用(例如单触和两次触屏)

onmousewheel

当使用鼠标滚轮时调用该事件。 鼠标滚轮数据存储在wheeldelta以及wheeldelta_raw变量中。
在不具有鼠标的触屏设备中,该事件在使用2指手势缩放时调用。wheeldelta数据会依据缩放确定为正值或负值。
wheeldelta_touchscale变量在这种情况下会提供更多细节信息。

onviewchange

在最终渲染完成之前或当前视角发生变化时调用。
在该事件中对view设置的评估和视角限制设置还没完成。这就是可以在最终渲染完成之前在该事件中改变视角。
注意 – 该事件的使用可能会影响渲染的品质和浏览的速度!

onresize

当屏幕窗口发生变化或者area尺寸发生改变时调用该事件。
此外载入一个新的全景时也会调用该事件。
新窗口尺寸存储在stagewidthstageheight两个变量中。
新的area尺寸可以通过area.pixelwidth以及area.pixelheight获取。

onautorotatestart

当自动旋转开始时调用该事件。
例如autorotate.enabled设置为enabled在经过了没有用户交互的autorotate.waittime等待时间,或者是调用了autorotate.start()。
可用于展示特定的自动漫游下的用户界面或隐藏正常的用户界面。

onautorotatestop

当自动旋转停止时调用该事件。
通常是用户中断了旋转或旋转被disabled或stopped。
可以恢复在onautorotatestart中变化了的一切事情。。

onautorotateoneround

当以下情况时调用该事件:
转完360度时,
或者局部全景或平面全景从左至右完全横摇时。
可用于在漫游中切换到下一个全景,例如自动漫游。如果在自动旋转时两个全景之间使用KEEPMOVING参数效果更佳。

onautorotatechange

当autorotate.enabled设定发生改变时调用该事件。
可用于更新自动旋转按钮的状态。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值