如何使用 JS 检测 iPhone 上的粘贴文本?
How can I detect pasted text on iPhone with JS?
我正在开发一个跨平台网站,其中 UI 会根据用户输入进行更改。一个这样的变化是,每次通过键入或复制粘贴填充某个输入时,它都会显示一个隐藏的输入。问题?让它在 iPhone.
上运行
目前我 成功检测到桌面上的复制粘贴(主要使用 onKeyUp)。令我沮丧的是,我发现 onPaste 无法完成工作。所以这就是我来这里的原因。有什么jQuery魔法可以拯救这个吗?
干起来了。
function noCTRL(e)
{
var code = (document.all) ? event.keyCode:e.which;
var ctrl = (document.all) ? event.ctrlKey:e.modifiers & Event.CONTROL_MASK;
var msg = "Sorry, this functionality is disabled.";
if (document.all)
{
if (ctrl && code==86) //CTRL+V
{
alert(msg);
window.event.returnValue = false;
}
else if (ctrl && code==67) //CTRL+C (Copy)
{
alert(msg);
window.event.returnValue = false;
}
}
else {
if (ctrl==2) //CTRL key
{
alert(msg);
return false;
}
}
}
Email :<input name="email" type="text" value=""/><br/>
Password :<input name="password" type="password" value=""/><br/>
Confirm Email :<input name="email" type="text" value="" onkeydown="return noCTRL(event)"/>
Confirm Password :<input name="password" type="password" value="" onkeydown="return noCTRL(event)"/>
你可以检测粘贴。它也适用于手机
$('input').on('paste', function(){
// do something
});
我正在开发一个跨平台网站,其中 UI 会根据用户输入进行更改。一个这样的变化是,每次通过键入或复制粘贴填充某个输入时,它都会显示一个隐藏的输入。问题?让它在 iPhone.
上运行目前我 成功检测到桌面上的复制粘贴(主要使用 onKeyUp)。令我沮丧的是,我发现 onPaste 无法完成工作。所以这就是我来这里的原因。有什么jQuery魔法可以拯救这个吗?
干起来了。
function noCTRL(e)
{
var code = (document.all) ? event.keyCode:e.which;
var ctrl = (document.all) ? event.ctrlKey:e.modifiers & Event.CONTROL_MASK;
var msg = "Sorry, this functionality is disabled.";
if (document.all)
{
if (ctrl && code==86) //CTRL+V
{
alert(msg);
window.event.returnValue = false;
}
else if (ctrl && code==67) //CTRL+C (Copy)
{
alert(msg);
window.event.returnValue = false;
}
}
else {
if (ctrl==2) //CTRL key
{
alert(msg);
return false;
}
}
}
Email :<input name="email" type="text" value=""/><br/>
Password :<input name="password" type="password" value=""/><br/>
Confirm Email :<input name="email" type="text" value="" onkeydown="return noCTRL(event)"/>
Confirm Password :<input name="password" type="password" value="" onkeydown="return noCTRL(event)"/>
你可以检测粘贴。它也适用于手机
$('input').on('paste', function(){
// do something
});