0
我正在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是的,因爲你需要將_reference_傳遞給函數,而不是函數的_result_。 – Alnitak
我看到了,我剛剛測試過,看起來好像如果我已啓用觸摸事件,函數將不會運行:)也許是因爲參數是引用而不是函數? – Roland