外部 / Javascript接口action说明文档

更新 2023.3.21 krpano 1.21


js( JavascriptFunction(parameters) )

调用Javascript函数。

在调用JavaScript代码之前,parameters由krpano进行解析。在参数中使用get(var)calc(expression)解析krpano变量。

ico-example 示例

HTML或js文件中的代码:

function test(p1, p2, p3)
{
alert(p1 + “: ” + p2 + ” / ” + p3);
}

XML文件中的代码:

js( test(‘Lookat’, get(view.hlookat), get(view.vlookat)) );

jscall( …任意 Javascript 代码… )

直接调用任意类型Javascript代码。

在Javascript代码中,下面这些接口对象可供双向通讯使用。

  • krpano
    • krpano接口对象(允许javascript直接访问整个krpano结构和其中的所有函数)。
  • caller – 调用了该动作的<layer>, <plugin> 或 <hotspot>元素对象。
ico-example 示例

更改某个html元素的样式:

jscall(‘document.getElementById(“test”).style.display=”none”;’);

使用calc()动作构建Javascript调用,并传递krpano变量:

jscall(calc(‘console.log(“krpano version: ‘ + version + ‘”)’));

后退到上一个网页:

jscall(‘history.back()’);

jsget(variable, …Javascript 代码… )

获取Javascript变量的数值或返回某个Javascript函数的数值。

在Javascript代码中,下面这些接口对象可供双向通讯使用。

  • krpano
    • krpano接口对象(允许javascript直接访问整个krpano结构和其中的所有函数)。
  • caller – 调用了该动作的<layer>, <plugin> 或 <hotspot>元素对象。


参数:

  • variable
    • 返回值所存储的krpano变量的名字。
    • 变量不存在则创建一个。
ico-example 示例

获取当前网页的地址。

jsget(ret, ‘location.href’);
trace(‘location=’, get(ret));

让用户输入密码:

jsget(passwort, ‘prompt(“Enter Password”)’);
if(password == ‘hidden’, …);

获取当前日期,格式为YYYY-MM-DD:

jsget(date, ‘new Date().toISOString().slice(0,10);’);
trace(‘date=’, get(date));

event=”js: …any Javascript code…”

直接从事件(或变量中定义的代码)调用任何类型的Javascript代码。
当被调用的动作代码字符串以js:开头时:它将被视为Javascript代码。

在 Javascript 代码中,这些对象可用于双向通信:

  • krpano
    • krpano接口对象(允许javascript直接访问整个krpano结构和其中的所有函数)。
  • caller – 调用了该动作的<layer>, <plugin> 或 <hotspot>元素对象。
ico-example 示例
onclick=”js:alert(caller.path);”
onclick=”js:krpano.actions.lookto(0,0);”
addcssstyles(styles)

动态添加CSS样式。

参数:

  • styles
    • 包含CSS样式的字符串。

 Javascript API:
krpano.events.addListener(eventname, callback)
krpano.events.removeListener(eventname, callback)

给krpano事件添加或移除Javascript监听器/回调函数。


参数:

  • eventname
    • krpano事件的name,例如onclick事件就是“onclick”
  • callback
    • 对指定事件调用的JavaScript函数。
    • 某些事件(例如鼠标或者键盘事件)会提供事件对象作为参数。
ico-example 示例

下一页为 1.20文档

发表评论