我们是否可以将事件处理程序附加到iPad / iPhone中的copy
事件?
答案 0 :(得分:0)
我尝试了oncopy
事件,该事件几乎适用于所有标准浏览器。幸运的是它也适用于iPad。
//Since there is no "copy" method exposed by jQuery I am using "on" method
$(document).on('copy', function(){
//Copy event triggered
});
同样,cut
和paste
事件也有效。
注意:如果您只想处理一个特定容器,那么代替document
,即使这样也可以。
$('containerSelector').on('copy', function(){
});
答案 1 :(得分:0)
根据spec (link) iOS中不支持复制/粘贴事件
答案 2 :(得分:0)
到达这里很晚,但我看到两种方式:
如果听取输入的复制事件,只需将<!doctype html>
<html>
<head>
<meta name="description" content="http://stackoverflow.com/questions/37817472">
<meta charset="utf-8">
<base href="https://polygit.org/components/">
<script href="webcomponentsjs/webcomponents-lite.min.js"></script>
<link href="polymer/polymer.html" rel="import">
<link href="iron-ajax/iron-ajax.html" rel="import">
</head>
<body>
<dom-module id="my-el">
<template>
<iron-ajax id="ajax"
url="https://www.googleapis.com/books/v1/volumes?q=polymer"
handle-as="json"
on-response="onResponse"
last-response="{{response}}" auto></iron-ajax>
</template>
<script>
Polymer({
is: 'my-el',
properties: {
response: {
type: Object,
notify: true
},
queue: {
type: Array,
notify: true,
value: function() { return []; }
}
},
onResponse: function(e) {
var ajax = this.$.ajax;
var originalUrl = 'https://www.googleapis.com/books/v1/volumes?q=polymer';
var url = ajax.lastRequest.xhr.responseURL;
if (url.includes(originalUrl)) {
console.log('this is the first request');
for (var i = 0; i < ajax.lastResponse.items.length; i++) {
this.push('queue', ajax.lastResponse.items[i].id);
}
ajax.url = this.url(this.pop('queue'));
} else {
console.log(ajax.lastResponse.selfLink);
ajax.url = this.url(this.pop('queue'));
}
},
url: function(id) {
return "https://www.googleapis.com/books/v1/volumes/" + id;
}
});
</script>
</dom-module>
<my-el></my-el>
</body>
</html>
属性添加到oncopy
(http://www.w3schools.com/jsref/event_oncopy.asp)
如果在任何DOM元素上监听复制事件(可以是整个<input>
,但是包括document
在内的任何其他DOM元素),请添加一个事件监听器来复制&#34;复制& #34;:
input