1

我正在尝试使用 Captivate JavaScript 窗口在 Captivate 中隐藏和显示对象,但即使感觉应该很容易做到,我也无法显示我的对象!

到目前为止,我已经尝试了以下方法:

var slideNum = window.cpAPIInterface.getCurrentSlideIndex();   // to get current slide number

var CC = $("#CC_text_" + slideNum);      // to get a proper object name as I have similar objects on every page

之后我尝试了标准的 JS 方法,比如 CC.hide(); 尝试改变可见性等,但没有任何效果。有没有人尝试过这样的事情?

谢谢!

4

5 回答 5

2

幸运的是,我今天遇到了这个问题。问题是它$("#CC_text_" + slideNum);返回了你想要的对象之上的可访问性对象。实际对象是可访问性对象下方的画布元素,并且方便地具有相同的 id + "c"。所以你会想要:

$("#CC_text_" + slideNum + "c");

此外,似乎隐藏在输出中的对象(故障说明等)设置为display: block; visibility: hidden;因此.show()不起作用,您需要使用.css('visibility', 'visible')

于 2016-07-27T22:28:40.773 回答
0

您可以使用 JQuery 的“开始于”选项:

 $(['id^="CC_text_"']);
于 2021-01-14T13:15:02.160 回答
0

请参考https://helpx.adobe.com/captivate/using/common-js-interface.html

它清楚地说:

要隐藏任何对象,请使用 cp.hide("object_name");

要显示任何对象,请使用 cp.show("object_name");

于 2017-05-16T15:04:04.750 回答
-1

刚发现这个。可以使用 cp.show("objectname"); 访问母版幻灯片上的对象,例如导航。/cp.hide("对象名"); 虽然我已经看到播放栏按钮的一些奇怪行为(它们会隐藏但一旦隐藏就不会显示)。

于 2020-07-08T14:35:17.907 回答
-1

要通过项目中包含的 javascript 显示/隐藏任何对象(即,您已通过操作窗口输入它),我总是使用:

cp.hide('myText'); // obviously substitute show with hide function
于 2016-10-12T13:09:19.803 回答