2014-10-08 3 views
0

Hei ребята, я добавил следующие строки кода в JavaScript на Succes из коробки щелчка в Captivate:С помощью клавиши переключения и нажмите, чтобы перейти к следующему слайду

document.onkeydown = function (e) { 
    if (e.keyCode == 16) { 
     document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide', 5); 
    } 
}; 

Это делает хорошо, что он делает, но после того, как первый хотя бы im на другом слайде, и я нажимаю клавишу shift, он переходит к слайду 5 :(Другой вопрос: как установить событие mousedown и onkeyup на той же кнопке. То, что я пытаюсь достичь, - перейти к следующему слайду, если я нажму shift ключ и я нажимаю на поле мыши

EDIT:. новый код:

document.onmousedown = function (e) { 
var currentSlide = document.Captivate.cpEIGetValue('m_VarHandle.cpInfoCurrentSlide'); 
     if(currentSlide == 5 && e.keyCode == 16){ 
      document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide' , 5); 
} 
}; 

Как я думаю, он должен срабатывать, когда я нажимаю на него, BUUUT, к сожалению, он не работает ... похоже, что Captivate не распознает событие onmousedown: |

RE-EDIT: i выверните, как заставить его работать. Вот код:

document.onkeydown = function(e) { 
var currentFrame = document.Captivate.cpEIGetValue('m_VarHandle.rdinfoCurrentFrame'); 
var currentSlide = document.Captivate.cpEIGetValue('m_VarHandle.cpInfoCurrentSlide'); 

     if(currentSlide == 5 && e.keyCode == 16){ 
      document.Captivate.cpEISetValue('m_VarHandle.rdcmndGotoFrameAndResume' , 491); 

} 
}; 

document.onkeyup = function(e) { 
var currentSlide = document.Captivate.cpEIGetValue('m_VarHandle.cpInfoCurrentSlide'); 

     if(currentSlide == 5){ 
      document.Captivate.cpEISetValue('m_VarHandle.rdcmndGotoFrameAndResume' , 485); 

} 
}; 

Теперь все просто СОВЕРШЕННО! его то, что я хотел сделать ... но он работает только на локальном хосте ... только когда я нажимаю F12 в Captivate :(Если я пытаюсь запустить экспортированный swf или html из улавливания его раздавить: (((Любой идее?

ответ

0
var slide = 4; 
document.onkeydown = function (e) { 
    if (e.keyCode == 16) { 
     slide++; 
     document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide', slide); 
    } 
}; 

Bassically вы хотите увеличить позицию (второй аргумент cpEISetValue), в вашем коде, вы всегда установить его до 5. Кроме того, убедитесь, чтобы сбросить его, когда он достигнет положения ползунка макс.

0

Вы можете проверить ключ SHIFT внутри щелчка:

var slide = 4; 
$('body').click(function (e) { 
    if (e.shiftKey) { 
     slide++; 
     document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide', slide); 
    } 
}); 

check here

0

Если вы хотите установить щелчок клавиши сдвига вы можете использовать это:

$(document).click(
    function(e){ 
    if(e.shiftKey){ 
     document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide', 5); 
    } 
    } 
); 

одни и те же работы с ctrlKey и клавишу Alt

И чтобы изменить страницу штраф вам нужна контрольная переменная:

var current_page = 1; 

$(document).click(
    function(e){ 
    if(e.shiftKey){ 
     current_page++ 
     document.Captivate.cpEISetValue('m_VarHandle.cpCmndGotoSlide', current_page); 
    } 
    } 
); 

Я думаю, что это конечный код, который вам нужен (возможно, необходимо изменить документ на идентификатор или класс, который вы используете, например, «#element_id» или «.element_class»)

 Смежные вопросы

  • Нет связанных вопросов^_^