标签存档: jquery

前端开发的异常错误记录

在前端开发的过程中时常会遇到这样那样的小问题,如果一篇文章来写的话感觉太零散,这里我单独整理一个篇文章用于记录这些零散的问题和解决方案。

1、jquery 1.6.1 的事件BUG

这几天在开发工作中发现一个问题,就是浏览器不停在控制台下出现如下错误提示:

  1. event.layerX and event.layerY are broken and deprecated in WebKit. They will be removed from the engine in the near future.

开始我以为是我的程序写的有问题或者是chrome浏览器出问题了,后来在stackoverflow上发现很多人也遇到了这个情况。又来有原因是事件在申明过程错误。解决办法如下,在你的JS代码中添加如下代码即可:

  1. (function(){
  2.     // remove layerX and layerY
  3.     var all = $.event.props,
  4.         len = all.length,
  5.         res = [];
  6.     while (len--) {
  7.       var el = all[len];
  8.       if (el != 'layerX' && el != 'layerY') res.push(el);
  9.     }
  10.     $.event.props = res;
  11. }());

目前这个BUG已经提交到了JQUERY的BUG平台上面,应该会在未来的版本里进行修正。

2、可恶的迅雷插件

这段时间在chrome下开发JS程序时,一个好好的页面莫名其妙的报出错真让人摸不着头。关键也是错误并不是页面自身,而是chrome中的某一个JS脚本错误。错误如下:

  1. Uncaught ReferenceError: xl_chrome_menu is not defined

于是求助于网络大牛们,终于找到问题的所在,原来是迅雷的chrome插件引起的,于是果断删除该插件,世界终于清静了。嘿嘿

jQuery获取iframe内的DOM对象

在页面开发过程中,我们经常要用到IFRAME,JS的跨页面层级的操作就难以避免了。但是这个也不是啥高深的技术,无法避免的问题是越基础的问题越容易被忽略。因此我将JS中各种跨页面操作整理如下便于自己查找,也需要的朋友提供一些方便。

原态JAVASCRIPT DOM获取页面中的iframe:

  1. window.frames["iframeChild"].document    //假如iframe的id为iframeChild
  2. window.parent.document    //在子窗口中操作父窗口

获取页面的对象其实就是DOM方法外面加上jquery的选择符:

  1. $(window.frames["iframeChild"].document)    //假如iframe的id为iframeChild
  2. $(window.parent.document)    //在子窗口中操作父窗口

接下来就可以继续获取iframe内的DOM了,获取iframe内的dom对象有两种方法:

  1. $(window.frames["iframeChild"].document).find("#child")    //第一种
  2. $("#child",window.frames["iframeChild"].document)    //第二种

1.在父窗口中操作 选中IFRAME中的所有单选按钮

  1. $(window.frames["iframeChild"].document).find("input[@type='radio']").attr("checked","true");

2.在IFRAME中操作 选中父窗口中的所有单选按钮

  1. $(window.parent.document).find("input[@type='radio']").attr("checked","true");

jQuery widget 开发的一些窍门

最近有一个项目基于JQUERY UI套件进行开发,于是我考虑所有的JS功能基于UI的结构进行开发管理,同时也在网上面收集了一些开发中的敲门,一下主要是以针对widget方面的总结: 继续阅读 »

A标签下无法提交表单

有些时候为了能满足界面设计的需要,很多情况下大家会使用A标签来模拟提交按钮。为了防止a标签默认事件的触发,部分童鞋会写成这样:

  1. <a href="javascript:void(0);">提交</a>

然后通过JS代码去监听用户的鼠标事件,在大部分浏览器中该方法都可以正常执行,唯独在IE6的时候只有死翘翘~ 包括使用jquery都会出问题。这个是什么原因呢?该如何解决? 继续阅读 »

无觅相关文章插件,快速提升流量