2014-12-15 2 views
0

템플릿 글리치에 슬라이더가있어 코드가 최소화되었습니다. 따라서 문제의 원인을 찾는 것에 지쳐서 빠른 해킹을 사용하기로 결정했습니다.div를 여러 번 시뮬레이션하십시오.

div 클릭을 여러 번 실행해야합니다. 내가 클릭을 한 번 클릭에 대한

$('.control-prev').trigger('click'); 

작품 벌금을 트리거하기 위해이 코드 조각을 사용했습니다. 이제 클릭하여 여러 번 만들 수 있습니까?

+2

여러 번 호출 ... 루프를 사용합니다. (var i = 0; i <10; i ++) {$ ('control-prev'). trigger ('click');}' –

+0

"* ... 코드가 최소화됩니다 *"- 물론이 문제를 해결하기 위해 축소되지 않은 코드의 백업본을 보관 했습니까? –

+0

흠. 아직 한 번의 클릭 만 발생했습니다. 추신. 불행히도 처음에는 un-minified 코드를 얻지 못했고 이제는 템플릿을 만든 개발자가 없습니다 ... – whatzi77

답변

0

http://jsfiddle.net/br4Lmyso/ :

// set your count to whatever you want. Get a reference to the div 
// so you're not querying the DOM everytime. 
var triggerCount = 3; 
var triggerDiv = $('.control-prev'); 

// loop! 
for(var i = 0; i < triggerCount; i++) { 

    triggerDiv.trigger('click'); 

} 
+0

시뮬레이션 한 번만 클릭하십시오 – whatzi77

+0

위의 JSFiddle에서 제대로 작동합니다. 코드에 다른 문제가 발생해야합니다. 콘솔의 모든 오류 메시지? – Aweary

+0

chrome-extension : //boadgeojelhgndaghljhdicfkmllpafd/cast_sender.js net :: ERR_FAILED와 그 중 4 가지가 cast_sender.js의 다른 소스 – whatzi77

0

명확하게하기 위해 (경고 그냥 빨리이 작동 보여, 세 경고를 생성), trigger(...)는 클릭 동작을 시뮬레이션하지 않고, 당신이 클릭 동작을 시뮬레이션 할 수있는 방법은 없습니다 . 그것은 주어진 이벤트를 처리하는 함수를 호출하는 것입니다. 이 두 가지는 완전히 다릅니다. 예를 들면 다음과 같습니다.

$('#test').click(function() { 
    console.log("Clicked"); 
}); 

$('#test').dblclick(function() { 
    console.log("Double Click"); 
}); 

$('#test').trigger('click'); 
$('#test').trigger('click'); 

두 번 클릭이 신속하게 트리거 되더라도 두 번 클릭하면 트리거되지 않습니다.

+0

음, 아니요. 그러나 두 번 누르기를 실행하려면'.trigger ('dblclick'); ' –

+0

@DavidThomas를 사용하십시오. 제 요점은 트리거 ('클릭')가 마우스 클릭과 똑같지는 않습니다. OP는 최소화 된 코드로 작업하기 때문에 클릭을 시뮬레이션하고 싶습니다. 이 코드는 브라우저를 사용하고 몇 번의 클릭 만 할 때 작동하며 몇 번의 클릭을 트리거하는 코드를 사용하여 동일한 효과를 생성하려고합니다. 그러나, 그들은 두 가지 다른 것입니다. – invisal

관련 문제