小编Joh*_*ohn的帖子

如何在用户点击链接(<a>元素)时取消导航?

当用户点击链接时,我正在尝试使用AJAX加载一些东西,但我希望链接实际上去某处,以便在禁用javascript时应用程序仍然有效.有没有办法只使用javascript做一些事情并在点击链接时取消导航?

什么是最佳做法?可以这样做,还是我需要使用javascript替换链接或什么?

jquery

42
推荐指数
4
解决办法
6万
查看次数

Javascript从具有多个属性的文件输入元素获取文件数量及其文件名?

我有一个带有multiple="multiple"属性的文件输入,允许用户一次选择多个文件.我想在上传之前显示所选的文件名及其计数但是我不知道如何使用javascript从文件输入元素获取此信息?

<input type="file" id="fileElementId" name="files[]" size="20" multiple="multiple" />
Run Code Online (Sandbox Code Playgroud)

我试过这个:

document.getElementById('fileElementId').value
Run Code Online (Sandbox Code Playgroud)

但是,当我选择多个文件时,这只返回一个文件名.使用JavaScript是如何从具有multiple属性的文件输入元素中检索所选文件及其名称的数量?

javascript

40
推荐指数
2
解决办法
6万
查看次数

通过dataTransfer传递对象

我试图找出一种通过javascript的event.dataTransfer传递本机对象的方法来进行拖放.我正在编写CMS的前端编辑器部分,并希望用户能够拖放元素(许多不同类型,从文件到图像到HTML片段到几乎任何东西).这就是为什么我想传递一个真实的对象,所以我可以附加数据来指定必要的东西,以便知道如何渲染它.

一种解决方法是使用jQuery的.data()将对象附加到页面上的其他内容,然后简单地在setData中传递选择器字符串...但我并不特别喜欢该hack.

这也可以通过jQuery UI的draggable/droppable来解决(我并不完全反对使用任何库),但由于dropzone位于iframe中,这实际上是最新jQuery UI中的文档错误(1.10.2) ).另外,如果可能的话,我更愿意本地做.这个应用程序中已经有足够的库.

这是问题所在:http://jsfiddle.net/AHnh8/

var foo = {foo: "foo", bar: "bar"};

$dragme.on("dragstart", function(e) {
    e.originalEvent.dataTransfer.setData("foo", foo);
});

$dropzone.on("dragenter", function(e) { e.preventDefault(); });
$dropzone.on("dragover", function(e) { e.preventDefault(); });
$dropzone.on("drop", function(e) {
    console.log(e.originalEvent.dataTransfer.getData("foo")); // [Object object]
    console.log(typeof e.originalEvent.dataTransfer.getData("foo")); // string
});
Run Code Online (Sandbox Code Playgroud)

现在,在阅读了规范后,我完全理解为什么会失败.我不明白的是,如何最终实现我想要的.

谢谢

html jquery drag-and-drop

38
推荐指数
2
解决办法
3万
查看次数

用于对对象数组进行排序的简单函数

我想创建一个(非匿名)函数,按键按字母顺序对对象数组进行排序name.我只编写直接的JavaScript代码,所以框架至少对我没用.

var people = [
    {'name': 'a75', 'item1': false, 'item2': false},
    {'name': 'z32', 'item1': true,  'item2': false},
    {'name': 'e77', 'item1': false, 'item2': false}
];
Run Code Online (Sandbox Code Playgroud)

javascript sorting

37
推荐指数
4
解决办法
10万
查看次数

CSS伪元素上的事件监听器,例如:: after和:: before?

我有一个div带有CSS伪元素的元素::before用作关闭按钮(而不是使用实际按钮).我该如何申请一个事件监听器伪元素?

HTML

<div id="box"></div>
Run Code Online (Sandbox Code Playgroud)

CSS

#box:before
{
 background-image: url(close.png);
 content: '';
 display: block; 
 height: 20px;
 position: absolute;
 top: -10px;
 right: -10px; 
 width: 20px;
}

#box
{
 height: 100px;
 width: 100px;
}
Run Code Online (Sandbox Code Playgroud)

javascript css pseudo-element

37
推荐指数
3
解决办法
3万
查看次数

允许滚动但隐藏滚动条

我有一个div像这样的元素样式:

 <div style="overflow-y: auto; max-height: 300px;">< id="DivTableContainer" ></div>
Run Code Online (Sandbox Code Playgroud)

当它变得高于300px时,我需要允许沿y轴滚动,这很好.但我需要设置"visiblity = false"滚动条本身.

我试着使用这个元素样式:

overflow-y: hidden;
Run Code Online (Sandbox Code Playgroud)

虽然它隐藏了滚动条,但它也不允许滚动.有没有办法滚动滚动条而不显示滚动条?

html javascript css

35
推荐指数
3
解决办法
11万
查看次数

捕获"shift + tab"按键事件

我有一个案例,我想使用jquery捕获"shift + tab"键的同时按键事件.实际上,你们都知道它用于向后移动标签,但对于我来说,在一种情况下,标签不能向任何方向工作,即既不向前也不向后.所以我找到了一个jquery函数,用于向前移动标签,如下所示: -

$(':input').live('keydown', function(e) {    
    var keyCode = e.keyCode || e.which;     
    if (keyCode == 9) {    
        tindex = parseInt($(this).attr("tabindex")) + 1;
        if($(":input[tabindex='" + tindex + "']"))
        {
            $(":input[tabindex='" + tindex + "']").focus();
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

现在我想向后移动tah tab.有人可以指导我如何实现这一目标???

jquery

33
推荐指数
1
解决办法
3万
查看次数

IE11元元素打破SVG

我已经将SVG文件数据直接嵌入到我的html中.它在Chrome和Firefox中显示,但在IE11中根本不显示.与SVG的pastebin链接是http://pastebin.com/eZpLXFfD

我尝试添加META TAG但无济于事.起初我以为它可能是IE兼容性视图问题,但切换该功能也不起作用.

<meta http-equiv="X-UA-Compatible" content="IE=8">

有帮助吗?我还能提供哪些信息来帮助回答这个问题

internet-explorer svg internet-explorer-11

33
推荐指数
2
解决办法
9万
查看次数

Android上的WebKit可以使用哪些DOM事件?

我正在构建面向Android用户的移动网络应用.我需要知道哪些DOM事件可供我使用.我已经能够完成以下工作,但不是非常可靠:

  • 点击
  • 鼠标移到
  • 鼠标按下
  • 鼠标松开
  • 更改

我无法让以下工作:

  • 按键
  • KEYDOWN
  • KEYUP

有没有人知道支持的内容的完整列表以及在什么情况下(例如,onchange只能用于表单输入?)?我在谷歌上找不到这方面的参考.

谢谢!

更新:在Android开发人员列表中了同样的问题.我将做更多的测试,并将在这里和那里发布我的结果.

android dom webkit dom-events

32
推荐指数
3
解决办法
3万
查看次数

popstate返回event.state未定义

我正在学习HTML5中的历史,在这个例子中(打开JavaScript浏览器控制台以查看错误)event.state.url返回:

Uncaught TypeError: Cannot read property 'url' of undefined
Run Code Online (Sandbox Code Playgroud)

看看和帮助:http://jsfiddle.net/un4Xk/

jquery html5 history pushstate

25
推荐指数
1
解决办法
2万
查看次数