1

我没有代码可以开始,因为我在 JQuery 方面并不先进,这在这里看起来像是高级的东西。我知道如何添加类、隐藏元素和其他类型的东西,但这对我来说是新事物。这就是问题所在。我有通过 php 和 mysql 提供的内容。内容将共享同一个类,每页列出五个。我需要为每个相同的类添加一个额外的类,以赋予它一个独特的类。下面是 html 的示例。

  <div id="1" class="example"></div>
  <div id="2" class="example"></div>
  <div id="3" class="example"></div>
  <div id="4" class="example"></div>
  <div id="5" class="example"></div>

我需要 Jquery 对 html 执行此操作:

  <div id="1" class="example ex1"></div>
  <div id="2" class="example ex2"></div>
  <div id="3" class="example ex3"></div>
  <div id="4" class="example ex4"></div>
  <div id="5" class="example ex5"></div>

为 Id 标签创建脚本是不切实际的,因为如果我有一千个 Id,那么我将不得不为每个 id 复制脚本一千次,而且随着列表的长度越来越长,我将不得不复制该脚本一千次。这仅用于 javascript 目的,因此我想将其保留在 javascript 中。如果有办法在服务器端实现这一点,我也会接受这些建议。提前感谢所有人对此问题的任何帮助。

4

3 回答 3

3

现在我终于明白你想要什么了

需要此代码

// Wait on the document to be loaded
$(function(){
    // get every element with the class example in an array and loop
    // through it(each) with i  as index
    $(".example").each(function(i){
        // add class ex with the index
        // this is the element we are pointing at so a div
        $(this).addClass("ex" + i);
    });
});​

但是当你用 5 个 div 循环遍历你的数组时,你可以在服务器端轻松地做到这一点;)

于 2012-09-28T09:17:41.233 回答
2

如果我正确阅读了您的评论,您每页有 5 个项目,课程将分别为 ex1 ex2 ... ex5。

如果是这样,这是脚本:

var itemsPerPage = 5;
$(".example").each(function(){       
    var number = this.id % itemsPerPage;
    if (number == 0) number = itemsPerPage;
    $(this).addClass("ex"+ number);
});

或短版:

var itemsPerPage = 5;
$('.example').each(function(){
    $(this).addClass('ex'+ ((this.id % itemsPerPage) == 0 ? itemsPerPage : (this.id % itemsPerPage));
});

如果您根本不关心 ID,或者最短的版本是 EaterOfCorpses 的答案。每种方法都有其优点和缺点。

示例 1:错误的 ID 顺序

<div id="6" class="example">
<div id="8" class="example">
<div id="7" class="example">

EaterOfCorpses 会生成

<div id="6" class="example ex0">
<div id="8" class="example ex1">
<div id="7" class="example ex2">

我的脚本将生成

<div id="6" class="example ex1">
<div id="8" class="example ex3">
<div id="7" class="example ex2">

示例 2:随机 ID(EaterOfCorpses 的优点)

<div id="15blahblah" class="example">
<div id="5" class="example">
<div id="10" class="example">

EaterOfCorpses 会生成

<div id="15blahblah" class="example ex0">
<div id="5" class="example ex1">
<div id="10" class="example ex2">

我的脚本将在 15blahblah 生成相同的类和错误,这可能是好的(检测 ID 中的错误)和坏的(JS 不会针对该特定记录运行)

<div id="15blahlbah" class="example exNil">  
<div id="5" class="example ex5">
<div id="10" class="example ex5">

凉爽的。

于 2012-09-28T09:40:41.917 回答
0
$(document).ready(function(){
    jQuery.each($(".example"), function(){
        $(this).addClass("x" + this.id);
    });
});​
于 2012-09-28T08:41:56.693 回答