Modernizr과 터치 이벤트 테스트를 실행 중이며 테스트가 정상적으로 실행되고있는 것처럼 보입니다. 그러나 테스트가 성공적으로 수행 된 경우에만 호출하는 함수입니다. Modernizr 테스트가 실패한 후에도 함수가 계속 적용됩니다.
이
테스트입니다 :Cluster.prototype.test_touch_event_support = function(callback) {
return (Modernizr.touch) ? callback : log("Touch Support Undetected");
};
그리고이 테스트에 성공하는 경우에만 실행해야하는 기능입니다 : 그것은 아무튼에도 불구하고,
Cluster.prototype.initiate_shop_touch_events = function() {
var self = this;
return $("#" + this.shop_wrapper_id).hammer({prevent_default: true, drag_min_distance: Math.round(this.viewport_width * 0.1)}).bind("drag", function(ev) {
var data = JSON.parse(self.get_local_storage_data(self.shop_data_key));
var step = (ev.direction == "left") ? 1 : -1;
var new_page = parseInt(data.current_page + step);
return (new_page > 0 && new_page <= data.total_pages) ? $(self.shop_navigation_class).jPages(new_page) : false;
});
};
그리고 내가 지금처럼 확인 해요 테스트에 합격하는 논쟁에 의존하지 마십시오.
self.test_touch_event_support(self.initiate_shop_touch_events());
누군가가 기능이 왜 sti인지 말해 줄 수 있습니까? 달릴거야? 터치 이벤트가 지원되지 않는다는 메시지도 콘솔에 표시되기 때문에
를 찾을 수 있습니까? – Roland
@Roland 예, 함수의 _result_가 아닌 함수에 _reference_를 전달해야하므로 가능합니다. – Alnitak
내가 테스트 한 것을 볼 수 있으며 터치 이벤트가 활성화되어있는 경우 함수가 실행되지 않는 것처럼 보입니다 :) 아마도 인수가 함수가 아닌 참조 일 뿐이므로? – Roland