## 语法及使用
`actionname(parameters); ...`
* 语法格式:动作名(参数);
* 动作名可以为以下几种:
1. 内置的krpano动作名…
2. 在xml任何地方定义的action元素名…
3. 包含动作代码的变量/属性名。
* 不在引号内(单或双引号字符)的空白字符(如空格,制表,新行)将被忽略。
* 可以同时编写若干条动作,只需在每条动作尾部加上';'字符。
* 动作将被逐条执行。
* 在动作调用之间及参数之间的空白(如空格、tabs以及换行)将被忽略。
* 参数数量取决于被调用的动作实体。
* 参数之间需要使用逗号','来分开。
* 要想在参数中使用空白或逗号,那么参数就需要用单引号或双引号进行封闭。
* 所有给定参数都视为字符。当使用变量名作为参数时,不会被自动解析为对应值。一些动作可以自动处理变量名参数,但是那要依赖与动作体本身。要想使用变量作为参量来传递,必须使用get动作。注 - 一些动作可以自动解析变量参数的值,但这仅限少数动作的自身特性。
## 表达式
表达式将被使用在:if语句;条件循环(for,loop)语句;和 calc 动作中。用于判断逻辑条件是否成立,计算数学表达式或拼接字符串。
* 基本语法:a 操作符 b
* 其中a或b项可以是变量,值或字符串。
* 操作符可以是下表罗列之一。
* 运算顺序取决于具体的操作符,但在等价操作符内运算顺序是从左向右。
* 可以使用括号实现一个自定义运算顺序 - 例如:(a 操作符 b)操作符(c 操作符 d)
![](https://box.kancloud.cn/4d6ccee2d057e7c1e229ee2e5c3eb9a9_496x773.png)
~~~
.GT. 大于
.GE. 大于或等于
.LT. 小于
.LE. 小于或等于
.EQ. 等于
.NE. 不等于 .AND. 逻辑与
.OR. 逻辑或
.NOT. 逻辑非
.EQV. 逻辑等
.NEQV. 逻辑不等
运算符优先级由高到低顺序为:()→**→*或/→+或-→.GT.或.GE.或.LT.或.LE.或.EQ.或.NE.→.NOT.→.AND.→.OR.→.EQV.或.NEQV
~~~
## 数组
* 每个xml带name的元素是一个数组的 element / item。
* xml元素的名称是数组的名称和名称属性定义数组元素的名称/项目。
* 一个数组在krpano总是一个对象数组。
* 这样的数组项对象可以包含任何类型的自定义属性/属性。
* 数组可以预先定义或定义在运行时动态地设置一个数组项值,当第一次设置项值,然后自动将创建一个数组。
***静态XML语法: (在定义在xml结构)***
`<array_name name="item_name" value="..." />`
***动态行为的语法: (当访问或设置在运行时)***
`array_name[item_name].value`
**数组可用方法:**
~~~
count 统计
sortby(attribute, parameters*) 排序
removearrayitem(name or index) 移除
~~~
## 事件
~~~
onclick:鼠标点击
onover:鼠标经过
onhover:鼠标停留
onout:鼠标移开
ondown:鼠标按下
onup:鼠标抬起
~~~
## count
`lensflareset[name].flare.count`
## index
`lensflareset[name].flare[...].index`
* * * * *
官方文档:https://krpano.com/docu/actions/#top
- 概述
- 文件说明
- 载入全景
- krpano xml语法
- krpano xml内置元素
- 特殊属性
- krpano
- preview
- image
- view
- area
- display
- control
- cursors
- autorotate
- plugin/layer
- hotspot
- events
- action
- contextmenu
- network
- memory
- security
- lensflareset
- lensflare
- data
- scene
- style
- include
- progress(废弃)
- textstyle(废弃)
- action脚本语法
- 全局变量
- 逻辑、流程
- 数学运算符、函数
- 字符处理
- 动画效果
- 动态加载
- 视图动作、相机控制
- 坐标转换
- 更新重绘
- 动态添加移除元素
- 扩展js接口
- 调试
- 显示文字(废弃)
- 参考手册
- 常用操作
- 音乐控制
- 视频热点控制
- 全屏
- 键盘鼠标
- 场景
- 与js交互
- 获取中心坐标
- 插入全景视频
- krpano tools使用
- 常用插件
- Combobox(列表框)
- Videoplayer(视频播放器)
- Scrollarea(区域滚动)
- Gyro2(陀螺仪)
- MoreTweenTypes(动效)
- gridmenu(网格缩略图)
- skin_setting