欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

jquery选择器[attribute=value]出现的问题解决办法

程序员文章站 2022-05-15 12:55:01
...

jquery属性选择器[attribute=value]的问题

$("img").mouseenter(function (){ 
var bigimgsrc = $(this).attr('src');       
var liindex = $(this).siblings("ul").children("[datasrc=bigimgsrc]").index();
       alert(liindex);
       });

问题是:liindex一直是-1;
那么我var liindex = $(this).siblings("ul").children("[datasrc=bigimgsrc]").index();这一句话是哪里出问题了呢?请指点一下。

"[datasrc='" + bigimgsrc + "']"

我一般都习惯带对引号,还有开始没看清,变量你用拼接吧。

语法并没有错,检查一下是否拼写错误。index()找不到元素情况下返回-1,所以children这里的选择器拼写是否有错误?

 <div>
        <img src="http://apeclass.cn/1212/img/photo_01.jpg">
        <ul>
            <li data-src="http://apeclass.cn/1212/img/photo_01.jpg"></li>
            <li></li>
            <li></li>
        </ul>
    </div>
    <div>
        <img src="http://apeclass.cn/1212/img/photo_02.jpg">
        <ul>
            <li></li>
            <li data-src="http://apeclass.cn/1212/img/photo_02.jpg"></li>
            <li></li>
        </ul>
    </div>
    <div>
        <img src="http://apeclass.cn/1212/img/photo_03.jpg">
        <ul>
            <li></li>
            <li></li>
            <li data-src="http://apeclass.cn/1212/img/photo_03.jpg"></li>
        </ul>
    </div>
    <script>
    $('img').mouseenter(function() {        var bigimgsrc = $(this).attr('src'),
            liindex = $(this).siblings('ul').children("[data-src='" + bigimgsrc + "']").index()
        alert(liindex );
    });    </script>

说明$(this).siblings("ul").children("[datasrc=bigimgsrc]")没有选取到任何元素。

以上就是jquery选择器[attribute=value]出现的问题解决办法的详细内容,更多请关注其它相关文章!