比如页面有一个自定义标签<abc></abc>
我现在想得到这个页面的所有<abc>标签,用jQuery应该怎么写

解决方案 »

  1.   

    试过$("abc"),但获取不到,不用jQuery倒可以:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
    window.onload = function() {
    var abc = document.getElementsByTagName('abc');
    for(var i = 0; i < abc.length; i ++) alert(abc[i].innerHTML);
    }
    </script>
    </head><body>
    <abc>111</abc>
    <abc>222</abc>
    </body>
    </html>
      

  2.   

    非要用jquery的话,用 $("body").find("abc")试试
    写个alert($("body").find("abc").size())
    就知道找到没了
      

  3.   

    可以获取到对象的
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>demo</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){
    alert($("abc").length);
    })
    </script>
    </head><body><abc>1111</abc>
    <abc>1111</abc>
    <abc>1111</abc></body>
    </html>
      

  4.   

    干嘛要用自定义标签?
    貌似在html中用自定义标签的话,在各浏览器中jQuery的表现不太一致,又是兼容性问题。不过xml对象应该没这个问题,试试把自定义标签转移到xml中处理吧。
      

  5.   

    IE7下面直接获取不到,FF可以。<html><head>
    <script type="text/javascript" src="/jquery/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){if($.browser.msie){
     var abc = document.getElementsByTagName("abc");
     var s = (abc[0].parentNode.innerHTML);
     alert(s);
    }else{
     var len =  $("abc").html();
     alert(len);
    }
     
    });</script>
    </head><body><abc>123</abc>
    </body></html> 
      

  6.   

    var $abcs = $('abc');
    $abcs.each(function(){
    alert($(this).html())
    })貌似在火狐下可以,但是在IE下就不行了
      

  7.   

    补充,IE不是获取不到,可以获取得到,但是标签的结构解析有错误。alert($('abc')); // 结果是1,这个没错,说明可以找到标签
    alert($('abc')[0].outerHTML); // IE6中实测结果是 '<ABC>',而不是'<ABC>...</ABC>'!到这里可以看出来,这应该是IE的bug。