Я использую ContentFLow, javascript coverflow для изображений, здесь , и я интегрирую jQueryUI для тем и значков / кнопок. Я специально интегрирую кнопку «Воспроизведение / Пауза» для слайд-шоу, и она работает в Safari со следующим кодом, но я получаю сообщение об ошибке в FireBug в Firefox, и код завершается ошибкой.
Ошибка FireBug:
play_slide не определен
[Break On This Error] var p = play_slide;
Вот мой код ContentFlow для функции воспроизведения / паузы:
if (conf.showControlls) {
var c = document.createElement('div');
var p = play_slide;
}
/* toggle slideshow on and off */
flow.toggleSlideshow = function(force) {
if (this._slideshow_locked) var t = "stop";
else var t = "play";
if (force) {
switch (force) {
case "stop":
case "play":
var t = force;
break;
}
}
switch (t) {
case "stop":
if (p) {
p.removeClassName('play');
p.addClassName('pause');
p.setAttribute('title', "pause");
}
this._slideshow_locked = false;
this._startSlideshow();
break;
case "play":
if (p) {
p.removeClassName('pause');
p.addClassName('play');
p.setAttribute('title', "play");
}
this._slideshow_locked = true;
this._stopSlideshow();
break;
}
};
/* add controll elements */
if (c) {
p.addEvent('click', flow.toggleSlideshow.bind(flow), '');
Вот мой код JqueryUI для кнопки «Воспроизвести» и для изменения значка с pLay на «Пауза»
$(function() {
$("#play_slide").button({
text: false,
icons: {
primary: "ui-icon-play"
}
}).click(function() {
var options;
if ($(this).text() === "play") {
options = {
label: "pause",
icons: {
primary: "ui-icon-pause"
}
};
} else {
options = {
label: "play",
icons: {
primary: "ui-icon-play"
}
};
}
$(this).button("option", options);
$(this).toggleSlideshow();
});
});
Не уверен, почему он работает в Safari, а не в Firefox, но мне, очевидно, нужна помощь с
var p = play_slide;
Любая помощь для этого новичка будет оценена!
Mike