标签: javascript-events

使用Javascript读取客户端文本文件

我想读取一个文件(在客户端)并获取数组中的内容.它只是一个文件.我有以下,它不起作用.'query_list'是一个textarea,我想显示文件的内容.

<input type="file" id="file" name="file" enctype="multipart/form-data"/>

    <script>
       document.getElementById('file').addEventListener('change', readFile, false);

       function readFile (evt) {
           var files = evt.target.files;
           var file = files[0];

          var fh = fopen(file, 0);
          var str = "";
          document.getElementById('query_list').textContent = str;
          if(fh!=-1) {
             length = flength(fh);        
             str = fread(fh, length);     
             fclose(fh);                   
           } 
           document.getElementById('query_list').textContent = str;
        }
      </script>
Run Code Online (Sandbox Code Playgroud)

我该怎么办呢?最终我想循环遍历数组并运行一些SQL查询.

javascript javascript-events

30
推荐指数
2
解决办法
5万
查看次数

为什么FF说window.event未定义?(具有添加的事件监听器的调用函数)

我在这部分遇到了麻烦:

var ex = {
  exampl: function(){
    var ref=window.event.target||window.event.srcElement; // here
    alert(ref.innerHTML); // (example)
  }
}
Run Code Online (Sandbox Code Playgroud)

这个函数以这种方式调用:

document.body.childNodes[0].addEventListener('mouseover',ex.exampl,true);
Run Code Online (Sandbox Code Playgroud)

只有Firefox说window.event没有定义......

我不知道该怎么做,让它发挥作用.它在webkit浏览器和opera中运行得非常好(我无法在MSIE中检查它,我不关心它).

为什么会这样?

javascript firefox javascript-events addeventlistener

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

如何捕获页面上的所有滚动事件而不将onscroll处理程序附加到每个容器

请考虑以下网页:

 <html>
   <body onscroll="alert('body scroll event')">
     <div style='width:200px;height:200px;overflow:auto' onscroll="alert('div scroll event')">
       <div style='height:400px'>
       </div>
     </div>
   </body>
 </html>
Run Code Online (Sandbox Code Playgroud)

这个html创建一个带滚动条的div.如果移动滚动条,则会触发div元素上的"onscroll"事件.但是,身体上的"onscroll"事件不会被触发.这是预期的,因为W3C声明元素onscroll事件不会"冒泡".

但是,我正在开发一个客户端Web框架,只要滚动页面的任何元素上的滚动条,就需要知道它.如果"onscroll"冒泡,这很容易做到,但不幸的是,它没有.有没有其他方法可以检测整个页面上的onscroll事件?(现在我主要关注Webkit,所以特定于Webkit的解决方案会很好......)

以下是我尝试过的一些事情:1.捕获DOMAttrModified(似乎不会触发移动滚动条.)2.使用DOM Observers(似乎也不会触发滚动条)3.更改"onscroll"事件类型泡沫(似乎不可能)

似乎全局捕获onscroll事件的唯一方法是将onscroll事件附加到可能滚动的每个元素,这非常难看并且会损害我的框架的性能.

谁知道更好的方法?

提前致谢!

javascript dom scroll javascript-events

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

这是最好的Javascript键盘事件库.(热键,快捷键)

我想创建一个使用很多键盘事件的bbs论坛,

那么哪个是最好的键盘事件库,

谢谢

javascript javascript-events

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

触发器在jQuery中触发器与触发器

出于好奇 - jQuery的用例/用例是triggerHandler什么?据我所知道的,唯一的"真实"之间的差异trigger,并triggerHandler为本地事件触发与否,和事件冒泡行为(虽然triggerHandler的冒泡的行为似乎并不很难用复制trigger的代码几行) .确保本机事件不会触发有什么好处?

我很好奇这是否是一个便利功能,或者它存在更深层次的原因,以及我何时/什么时候使用它.

jquery events javascript-events jquery-trigger jquery-triggerhandler

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

是否有调试jQuery事件处理程序的工具/技术?

我目前正在试图找出点击事件处理程序附加到我的div.应该只附加一个处理程序,但似乎至少有一个.我正在使用FireBug,但Chrome也可以选择.我不喜欢IE,所以我不想使用它.

最好的情况是我可以使用FireBug检查我的div,并查看事件处理程序列表.

javascript jquery firebug google-chrome javascript-events

29
推荐指数
4
解决办法
9532
查看次数

在客户端使用chrome中的javascript创建文件

我想知道我是否可以使用javascript创建文本文件并将文件保存在他/她的计算机的用户"下载"部分中.我的功能应该工作的方式是当用户单击提交按钮时,我在文本文件中填充用户信息,然后将其保存在他的机器中.我希望这可以在谷歌Chrome中工作.

这可能吗?我看到的帖子明确告诉我这是一个严重的安全问题.

javascript google-chrome javascript-events google-chrome-extension facebook-javascript-sdk

29
推荐指数
4
解决办法
5万
查看次数

溢出时捕获滚动事件:隐藏元素

有关如何捕获具有溢出的元素的滚动事件的任何见解:隐藏?我想滚动一列而不向用户显示滚动条.

javascript jquery javascript-events

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

在DOM元素的样式对象发生更改后,您是否可以使用javascript钩子触发器?

元素有一个javascript style对象,其中包含css样式的不同名称和值.我想在每次更改此对象而不使用轮询时触发函数.有没有办法以跨浏览器兼容的方式执行此操作,并且可以与第三方代码可靠地工作(因为假设您提供了一个插件脚本)?将javascript事件绑定为DOMAttrModifiedDOMSubtreeModified不足以因为它们无法在Chrome中运行.

javascript css jquery javascript-events

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

使用jQuery触发html onclick事件

<input type="text" id="test_value" name="test_value" value="xyz" />
<input id="test_default" name="test_default" type="checkbox" onclick="with(this.form.elements['test_value']) { disabled = this.checked; if (this.checked) { value = ''; } else {if(value=='') {value=' '; value = '';}}};" />
Run Code Online (Sandbox Code Playgroud)

内联onclick是由我无法控制的cms生成的.我想$("#test_default").click();用jQuery 执行,但这不起作用,因为它没有绑定到jQuery事件管理器.

我一直在尝试变种

$("#test_default").click(function (e) {
                    $(e.target).attr("onclick").apply(checkbox, [e]);
                    return false;
                }).click();
Run Code Online (Sandbox Code Playgroud)

但无济于事.请帮忙.

谢谢.

onclick中可能有几十种不同的内联函数.复制它们并将它们并行运行并不是一个真正的选择.

答案适用于小型演示,但不适用于实时环境.请查看http://jsfiddle.net/GtJjt/我需要以编程方式触发复选框.

奇怪的是只能$("#metadata_field_text_10190_default")[0].click();正确触发事件.有谁能解释一下?

javascript jquery javascript-events

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