我有click()
来自jquery 的-function 的问题.我创建了一个<a>
-element,document.createElement('a')
并希望调用click()
关于这个元素的-function.关于这个元素,我想创建一个Excel文件并将其保存在桌面上.
我的代码:
$('body').on('click', '#test', function(event) {
var link = document.createElement('a');
link.download = 'test.xls';
link.href = 'data:application/vnd.ms-excel;utf-8,test';
link.click();
});
Run Code Online (Sandbox Code Playgroud)
此功能在chrome下运行,但不在Firefox下运行.
有谁知道为什么那不起作用?
我正在获取一个JSON元素并从其项目中构建一个列表,如下所示:
getTitles: function(data) {
data = data || {};
var list = [];
$.getJSON(
'/titles',
data,
function(data) {
$.each(data.data, function(key, val) {
list.push(
'<li><a href="'+ val.href +'">'+ val.title +'</a><span class="count">'+ val.count +'</span></li>'
)
});
$('#title-items').html(list.join(''));
}
);
}
Run Code Online (Sandbox Code Playgroud)
我正在为这样的a
元素绑定click事件:
$('a').on('click', function(e) {
alert('clicked');
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
旧的元素显示警报但新的元素遵循URL.事件处理程序不适用于新事件处理程序.我怎么解决这个问题?
我有一个浮动div显示,我希望它在用户点击div时隐藏.当悬停在元素上时,这类似于.hover()函数回调.只有我想点击才能这样做.
我尝试只为身体设置一个点击事件,这会隐藏div,但这会产生意想不到的结果.
任何人都有关于我如何轻松做到这一点的想法?
我正在开发一些javascript UI,并使用很多触摸事件,如'touchend',以改善触摸设备的响应.然而,有一些逻辑问题困扰着我......
我已经看到许多开发人员在同一事件中混合'touchend'和'click'.在许多情况下它不会受到伤害,但基本上该功能会在触摸设备上触发两次:
button.on('click touchend', function(event) {
// this fires twice on touch devices
});
Run Code Online (Sandbox Code Playgroud)
有人建议可以检测触摸功能,并适当设置事件,例如:
var myEvent = ('ontouchstart' in document.documentElement) ? 'touchend' : 'click';
button.on(myEvent, function(event) {
// this fires only once regardless of device
});
Run Code Online (Sandbox Code Playgroud)
上面的问题是它会破坏支持触摸和鼠标的设备.如果用户当前正在双输入设备上使用鼠标,则"点击"将不会触发,因为仅为该按钮分配了"touchend".
另一个解决方案是检测设备(例如"iOS")并根据以下内容分配事件: 在iPad上的touchend上调用两次Click事件.当然,上面链接中的解决方案仅适用于iOS(不是Android或其他设备),而且似乎更像是一个"黑客"来解决一些非常基本的东西.
另一种解决方案是检测鼠标移动,并将其与触摸功能相结合,以确定用户是鼠标还是触摸.问题当然是当用户想要检测它时用户可能没有移动鼠标......
我能想到的最可靠的解决方案是使用简单的去抖功能来简单地确保该函数仅在短时间间隔内触发一次(例如100ms):
button.on('click touchend', $.debounce(100, function(event) {
// this fires only once on all devices
}));
Run Code Online (Sandbox Code Playgroud)
我错过了什么,或者有没有人有更好的建议?
编辑:我在帖子后发现了这个链接,它提出了与上面类似的解决方案: 如何绑定'touchstart'和'click'事件但不回复两者?
这是怎么做到的?
当我尝试使用ListView 的performItemClick函数时,我遇到了一些困难.
我想要做的就是在列表的第一项中以编程方式执行单击.
我怎样才能做到这一点?我在文档中查找了该函数,但我并没有真正理解它的参数.
我尝试过类似的东西:
myListView.performItemClick(myListView.getChildAt(0), 0, myListView.getChildAt(0).getId());
Run Code Online (Sandbox Code Playgroud)
但它没有用 (myListView.getChildAt(0) returns null)
先感谢您!
我想要做的是操纵鼠标.对于我自己的目的,它将是一个简单的宏.因此,它会将我的鼠标移动到屏幕上的某个位置,然后点击,就像我按一定间隔点击一样.
可以将悬停和点击功能合并为一个,例如:
点击:
$('#target').click(function() {
// common operation
});
Run Code Online (Sandbox Code Playgroud)
徘徊:
$('#target').hover(function () {
// common operation
});
Run Code Online (Sandbox Code Playgroud)
它们可以组合成一个功能吗?
谢谢!
我正在四处寻找一个复选框添加一个事件,我想人们会用它.change
来设置一个改变事件,但我发现人们正在使用.click
是否有一个原因?它们似乎都适用于点击事件和键盘更改.我错过了什么吗?
如果你不相信我,那就试试吧
我对javascript不是很熟悉,但我认为这是实现目标的最佳方式.如果没有,请纠正我.
我在最后有一个许可文本2按钮.所有这些都是用HTML编写的,WebView
因为许可证中有一些链接.现在,我希望当用户点击其中的"确定"按钮时WebView
,这会触发一些我可以用Java抓取的javascript或监听器来触发Intent
应用程序中的前进.(取消按钮会相反,但如果我知道如何做,我可以做另一个.;))
这会给某人敲响吗?欢迎任何解释或示例代码.