我正在使用jquery animate来制作幻灯片.我在幻灯片的末尾有一个箭头,并在该箭头上给出了点击事件.它的工作原理是在点击时在silde中移动一个项目并在mousedown上移动整个silde.这在桌面上运行良好,但在iPad中,一次点击就会有两个项目进入幻灯片.我不明白为什么在iPad中调用click事件两次.点击的示例代码是:
$('#next_item').bind('mousedown touchstart MozTouchDown',function(e) {
$('.slide').animate({left:left},6000);
});
$('#next_item').bind('mouseup touchend MozTouchRelease',function(e) {
No.nextItem();
});
Run Code Online (Sandbox Code Playgroud)
#next_item是幻灯片末尾箭头的id.我已尝试过unbind touchstart和touchend事件但是在滑动滚动期间由于解除绑定物品在单个项目后没有进入幻灯片内部.No.nextItem()在幻灯片中移动一个项目.leftin $('.slide')是向左移动幻灯片.请帮助我找到解决方案为什么会发生这种情况以及如何为ipad解决此问题.
好的,我对移动/平板电脑平台的网络开发还不熟悉.我对开发浏览器环境非常有信心.
我的问题是我没有任何平板电脑(我很穷,所以不得不盲目飞行)所以我很难做测试.我也非常担心点击事件无法正常工作.
如何确保click/mousedown jquery事件在平板电脑/智能手机上正常工作?
关于点击事件和平板电脑/智能手机的最佳做法是否有任何共识?
注意:我不是在开发一个仅限移动设备的网站 - 该网站会改变移动设备的形状.
我在背景图像下面有一个按钮.为了使按钮可单击,我添加了一个"指针 - 事件:无".但是,我还想要一个精灵图像,我在hover上更改背景图像,指针事件也会禁用.有没有办法保持元素的悬停属性,同时点击通过它?
当点击#cover_button时,我搜索并尝试了jquery unbind click并返回false,但它没有用.
这是我的代码.如果我保留指针事件:无,我可以单击背景图像下面的按钮.但这会禁用悬停属性.如果我将其删除,我将无法点击.
#cover_button {
pointer-event: none;
position: absolute;
width: 46px;
height: 24px;
left: 0;
top: 0;
background: url(http://s13.postimg.org/bqxlnbfs3/Like.png);
}
#cover_button:hover {
background: url(http://www.moronacity.com/tech-journal/images/2011/February/small-Facebook-like-button-counter.gif);
}
Run Code Online (Sandbox Code Playgroud)
编辑:
这是一个小提琴:可点击但不可爱
http://jsfiddle.net/3PXTK/1/
这是另一个:Hoverable但不可点击(我刚删除指针事件:无) http://jsfiddle.net/3PXTK/
任何人都可以想到一个很好的方法来忽略在Java中双击所带来的单击?
我希望每个人都有不同的行为:
......谁能想到办法做到这一点?某种计时器设置可能吗?一个想法赞赏:-)
<免责声明> ......是的,我知道我犯了一个最令人发指的可用性/用户界面失礼.</声明>
编辑#2:
虽然这可以解决由于计时器导致的延迟 - 但我放弃了这个解决方案,并使用中键单击进行选择而不是双击...
编辑:
谢谢cgull - 这是我能够想出的,因为你确认没有简单的方法可以做到这一点(请注意,如果我设置计时器<200奇数赛车在点击和计时器之间看到,但只要我将此值设置为> 200个工作只是peachy):
public void mouseClicked(MouseEvent e) {
System.out.println( "Click at (" + e.getX() + ":" + e.getY() + ")" );
if (e.getClickCount() == 2) {
System.out.println( " and it's a double click!");
wasDoubleClick = true;
}else{
Integer timerinterval = (Integer)
Toolkit.getDefaultToolkit().getDesktopProperty(
"awt.multiClickInterval");
timer = new Timer(timerinterval.intValue(), new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if (wasDoubleClick) {
wasDoubleClick = false; // reset flag …Run Code Online (Sandbox Code Playgroud) 使用Jquery有一种方法可以突出显示/选择(如果有人用鼠标选择它)我点击的div内的文本?不是文本框,只是普通的div.
我正在尝试创建一个"短网址"框,当有人点击文本区时,它会突出显示所有文本,但它也不需要允许人们更改文本框中的文本,但是当文本框被禁用时不能选择任何文字,所以我想这样做,我只是觉得div最容易.
对不起,伙计们我最初没有很好地解释我的意思,上面添加了信息以澄清.
如何从一个据称没有本机可点击行为的元素触发点击事件?
例如,我知道你可以简单地使用以下内容:
document.getElementById('x').click();
Run Code Online (Sandbox Code Playgroud)
但是如果'x'是'DIV'会发生什么?我有一个实现,它似乎没有触发...我得到错误(铬12):
Uncaught TypeError: Object #<HTMLDivElement> has no method 'click'
Run Code Online (Sandbox Code Playgroud)
想法?
快速编辑 - 我在这里寻找香草JS ......我喜欢在我的形象中重新发明轮子...... :-)
我有一个id ="content-area"的div,当用户点击这个div之外时,我想提醒他们他们点击它之外的事实.我如何使用JavaScript来解决这个问题?
<div id = "outer-container">
<div id = "content-area">
Display Conents
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我有这个代码,当单击图标编辑范围时,它会触发一个打开模态的动作,但同时,单击会传播到它下面的视图(personView).我希望动作执行并停止传播.
我能想到的唯一解决方案是使图标编辑自己的视图并通过在方法点击中返回false来停止点击传播.没有其他观点,还有其他方法可以做到这一点吗?
HBS:
{{#view Blocks.PersonView}}
<span class="inline pull-right icon-edit" {{action 'modalOpen' 'modifyPersonPopup' 'modifyPerson' this}}></span>
<p class="inline pull-left person-name">{{firstNameDelayed}}</p>
{{/view}}
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个Chrome扩展程序,当您单击扩展程序上的按钮时,它将单击网页上的元素,但由于某种原因,无论我尝试什么,它都不会执行任何操作.
到目前为止我已经有了这个
的manifest.json
{
"manifest_version": 2,
"name": "Such Activity",
"description": "Wow",
"version": "1.0",
"permissions": [
"tabs", "<all_urls>"
],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"content_scripts": [
{
"matches": [ "<all_urls>" ],
"js": ["content_script.js"]
}
]
}
Run Code Online (Sandbox Code Playgroud)
popup.html
<!doctype html>
<html>
<head>
<title>activity</title>
<style>
</style>
<script src="content_script.js"></script>
</head>
<body>
<button id="clickactivity">click</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
content_script.js
function ClickPlanet()
{
var planets = document.getElementsByClassName("planet-name");
var randomplanet = Math.floor(Math.random() * planets.length);
var clickplanet = planets[randomplanet];
clickplanet.click();
setInterval(function () { ClickPlanet() }, 2000);
}
document.addEventListener('DOMContentLoaded', …Run Code Online (Sandbox Code Playgroud)