Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-检索单个特定类,同时具有多个_Jquery_Css - Fatal编程技术网

jQuery-检索单个特定类,同时具有多个

jQuery-检索单个特定类,同时具有多个,jquery,css,Jquery,Css,我正在做一个带有动画导航的项目。 (乔姆拉在后台工作) 当有多个类(如下所示)时,如何仅检索class=“item-##” 我的jQuery $(document).ready(function(){ var timer; var hover; $('#nav li').hover( function() { /*Here!>>*/ var id = $(this).attr('class').split('-')[1];

我正在做一个带有动画导航的项目。 (乔姆拉在后台工作)

当有多个类(如下所示)时,如何仅检索
class=“item-##”

我的jQuery

$(document).ready(function(){
    var timer;
    var hover;

    $('#nav li').hover(
        function() {
/*Here!>>*/ var id = $(this).attr('class').split('-')[1];
            $('.moduletable-subNav ul').slideUp();
            $('#submenu-'+id).slideDown();
        },
        function(){
            var id = $(this).attr('id').split('-')[1];
            timer = setTimeout(function() { $('#submenu-'+id).slideUp(); },1000);
        }
    );

    $('.moduletable-subNav ul').hover(
        function(){
            clearTimeout(timer);
        },
        function(){
            var id = $(this).attr('id');
            timer = setTimeout(function() { $('#'+id).slideUp(); },1000);
        }
    );
});
我的HTML:

    <div class="moduletable">
    <ul class="menu" id="nav">
            <li class="item-109 current active parent"><a href="/tenc2012/burgerlijkrecht" >Burgerlijkrecht</a></li>
            <li class="item-110 parent"><a href="/tenc2012/strafrecht" >Strafrecht</a></li>
            <li class="item-108"><a href="/tenc2012/bestuursrecht" >Bestuursrecht</a></li>
    </ul>
    </div>
    <div class="moduletable-subNav">
            <ul class="menu" id="submenu-109">
                    <li class="item-114"><a href="/tenc2012/burgerlijkrecht/burgelijk-recht-deel-1" >Burgelijk recht deel 1</a></li>
            </ul>
            <ul class="menu" id="submenu-110">
                    <li class="item-117"><a href="/tenc2012/strafrecht/strafvordering" >Strafvordering</a></li>
            </ul>
    </div>


我有时使用的一种技巧是稍微作弊,并使用“rel”或其他未使用的属性来传递类似的信息。尝试设置:

<li ... rel="109">
有点像黑客,但做起来相当简单

编辑

使用karim79“数据编号”建议的示例:

<li ... data-number="109">

我有时使用的一种技巧是作弊,并使用“rel”或其他未使用的属性来传递类似的信息。尝试设置:

<li ... rel="109">
有点像黑客,但做起来相当简单

编辑

使用karim79“数据编号”建议的示例:

<li ... data-number="109">

不确定我是否跟随你,但你想:

$('#nav li[class="item-109"]')
如果你想知道电话号码,我想你可以打个电话

$(this).attr('class').replace(/[^\d]/g, "");
或者更安全一点

$(this).attr('class').replace(/^.*(item\-\d+)$/, "$1");

不确定我是否跟随你,但你想:

$('#nav li[class="item-109"]')
如果你想知道电话号码,我想你可以打个电话

$(this).attr('class').replace(/[^\d]/g, "");
或者更安全一点

$(this).attr('class').replace(/^.*(item\-\d+)$/, "$1");

这就是我想到的:

var classes = $('li[class^="item-]"').prop('class').split('\s');
var theClass;
$.each(classes, function(){
    if (this.match(/^item-/))
        theClass = this;            
});

这就是我想到的:

var classes = $('li[class^="item-]"').prop('class').split('\s');
var theClass;
$.each(classes, function(){
    if (this.match(/^item-/))
        theClass = this;            
});
试试这个:

var classes = $('#my_element').attr('class').split(" ");

var item_class = $(classes).filter(function(a,i) {
  return i.match(/item\-[0-9]+/);
});

console.log(item_class);
试试这个:

var classes = $('#my_element').attr('class').split(" ");

var item_class = $(classes).filter(function(a,i) {
  return i.match(/item\-[0-9]+/);
});

console.log(item_class);


我不明白这个问题-你能更好地解释你检索类的意思吗?您的意思是检索具有该类的项吗?“拥有多个类”是什么意思?您应该使用
项blahblah
“标识符”作为每个LI的ID,或者只是将数字部分作为
数据
属性存储在元素中,以便更简单地实现。添加的
类xxx
在哪里?最好将标识符放在
id
data
属性中,以便于以后检索。类应该对元素进行分组,而不是单独标识它们。我不理解这个问题-你能更好地解释检索类的含义吗?您的意思是检索具有该类的项吗?“拥有多个类”是什么意思?您应该使用
项blahblah
“标识符”作为每个LI的ID,或者只是将数字部分作为
数据
属性存储在元素中,以便更简单地实现。添加的
类xxx
在哪里?最好将标识符放在
id
data
属性中,以便于以后检索。类应该对元素进行分组,而不是单独标识它们。或者使用数据属性来代替
data number=“109”
(这就是它们的作用)。啊,是的,这将更符合标准。
rel
在HTML中经常被误用,实际上,它在大多数元素上无效。使用Joomla中的模板覆盖,我将其打印为数据编号=“###”。现在使用:)谢谢!或者改为数据属性
data number=“109”
(这就是它们的用途)。啊,是的,这将更符合标准。
rel
在HTML中经常被误用,而事实上,它在大多数元素上都是无效的。在Joomla中使用模板覆盖,我将其打印为数据编号=“###”。现在使用:)谢谢+1是的,请再说一遍,为什么这么多Jquery只是为了做一件简单的事情。哈哈,你已经有了很棒的方式+所有其他3种方式上下。使用
prop
会很好。+1是的,请再说一遍,为什么这么多Jquery只是为了做一件简单的事情呢。使用
prop
会让它变得很好。