Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Hammer.js的编程事件触发器_Javascript_Html_Hammer.js - Fatal编程技术网

Javascript 使用Hammer.js的编程事件触发器

Javascript 使用Hammer.js的编程事件触发器,javascript,html,hammer.js,Javascript,Html,Hammer.js,我发现使用Hammer.js创建编程事件非常困难。我想要的是有两个元素,当点击元素一时,我想在第二个元素上激发、触发或发出一个事件 mc1.on("tap", function(event) { console.log("MC1 Tapped"); var customEvent = JSON.parse(JSON.stringify(event)); // Creating customEvent.center.x = 999; // ...chan

我发现使用Hammer.js创建编程事件非常困难。我想要的是有两个元素,当点击元素一时,我想在第二个元素上激发、触发或发出一个事件

mc1.on("tap", function(event) {
    console.log("MC1 Tapped");          
    var customEvent = JSON.parse(JSON.stringify(event)); // Creating
    customEvent.center.x = 999; // ...changing something
    mc2.emit("tap", customEvent); // Emitting       
});
我的最终目标是在拖动项目时使用此技术。基本上,按住某个元素以创建其克隆,然后在克隆上发出拖动事件。这将停止拖动原始元素,并开始拖动新的克隆元素

说到这里,我创建了一个简单的JSFIDLE。它有两个div元素。我想做的是让一号分区被点击,一个事件会自动在二号分区触发一个点击事件

var buttonOne = document.getElementById("one");
var buttonTwo = document.getElementById("two");

var mc1 = Hammer(buttonOne);
var mc2 = Hammer(buttonTwo);

mc1.on("tap", function(event) {
    alert("MC1 Tapped");
    console.log("MC1 Tapped");          
    mc2.emit("tap");            
});

mc2.on("tap", function(event) {
    alert("MC2 Tapped");
    console.log("MC2 Tapped");          
});

非常感谢您的帮助。谢谢。

您应该向.emit方法添加第二个参数

 mc1.on("tap", function(event) {
    alert("MC1 Tapped");
    console.log("MC1 Tapped");          
    mc2.emit("tap", event); // HERE           
});

您也可以自定义事件

mc1.on("tap", function(event) {
    console.log("MC1 Tapped");          
    var customEvent = JSON.parse(JSON.stringify(event)); // Creating
    customEvent.center.x = 999; // ...changing something
    mc2.emit("tap", customEvent); // Emitting       
});