JavaScript jQuery tips

JS常用信息:

 

  1. IE错误提示“缺少标识符、字符串或数字”,检查JS文件中对象字面量是否最后包含逗号。比如
    var obj = {id: 1, name: 'test',};
     紧接'test'后那个逗号就会导致IE出错。而FireFox正常。

  2. jQuery操作下拉菜单选定某个项目功能在IE中似乎无效。兼容办法:
    document.getElementById( id ).selectedIndex = $('#' + id + " option[value='" + someval + "']").attr('index');
    
     
  3. jQuery判断DOM是否存在:
    // 判断DOM元素是否存在
    if ($('#id')[0] ) {
        do_fun();  // exists
    }
    if ($('#id').length > 0) {
        do_fun();
    }
    
     
  4. 错误的框架访问:

    $(window.top.document).find('#topFrame p').text();	
    $(window.parent.document).find('#topFrame').remove();
     

    正确的框架访问:

    $(window.parent.frames['left'].document).empty(); //删除左框架“内容”
     

    在顶级窗口中 改变框架本身属性,此时的框架是顶级窗口的一个DOM 对象

    $(window.parent.parent.document).find('#fs2').attr('cols', '155,*');
    $(window.top.document).find('#left').remove(); 
     

    以下是跨框架访问操作DOM 元素 . frames  + id 的方式最兼容

    window.top.document.getElementById('left').id;
    window.top.frames[0].document.getElementById('SendFlag').id;
    window.top.frames['topFrame'].document.getElementById('SendFlag').id;
    window.top.frames['left'].document.getElementById('mli0').name;
    $(window.top.frames['left'].document).find('#mli0').attr('id');
    $(window.top.frames['topFrame'].document).find('p').text('cqple');
    $('p', window.top.frames['topFrame'].document).text('cqple');
     

     

  5. 子窗口操作父窗口

    // jquery
    $("#父窗口元素ID",window.parent.document)...就行了
    //js 版本
    window.parent.document.getElementById()
     

  6. jQuery 对象

    var el = $(selector);  // 取到的el变量为jquery对象,el[0]则为 selector对象
    var node = el.jquery ? el[0] : el; // el.jquery 返回真(其实是jquery版本号)说明el为jquery对象
     
  7. jQuery ajax对提交值编码规则
    如果是字符串类型不编码,如果是对象则默认调用encodeURIComponent。所以如果$ajax data参数值是自己拼接的字符串那么就需要手工编码一次
    var pdata  = '&a=33' + '&b=' + encodeURIComponent('zz=3');
    // var pdata  = {a: 33, b: 'zz=3', c: 'z3&?aj=3', d: encodeURIComponent('z3&?aj=3')};
    
    $.ajax({
       type : "POST",
       url    : "some.php",
       data:  pdata
       success: function(msg){
         // do something
       }
    });
     






 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值