უსასრულოდ Nesting <div> Tags და jQuery

ეს ჩანს, ასეთი oddball თემას, მე არ ვარ დარწმუნებული, რომ ეს ნამდვილად ღირს ბლოგინგის შესახებ, მაგრამ ეს არ შეუწყვეტია მე წინაშე, ასე რომ აქ ჩვენ Smile

მე შემუშავების პროექტზე, სადაც მე უბიძგებენ გარკვეული მონაცემების ძებნის, შეფუთვის იგი დაყოფილია XML გაგზავნა და შემდეგ რომ XML საბოლოოდ გადაკეთდა HTML მეშვეობით XSLT.  აქ არის ბევრი jQuery ჩართული, ერთი ცოტა რომელიც ახორციელებს რამდენიმე tabbing ფუნქცია.  როდესაც თქვენ დააჭირეთ tab (ნამდვილად, a <div>), jQuery აღვიძებს. დამალვა() და. შოუ() სხვადასხვა divs (საწყის გვერდზე დატვირთვის იწერს ყველა შინაარსი ასე რომ არ არსებობს postbacks ამ შემთხვევაში).

რამოდენიმე საათის წინ, tab გადართვის ლოგიკა დაიწყო მოიქცევა erratically და ეს არ აჩვენებს ერთი ჩემი ჩანართი.  მე საბოლოოდ დააფიქსირა, მას იმ ფაქტს, რომ ინტერნეტ explorer (სულ მცირე) ეგონა, რომ <div> tags წყობილი შორს, რამდენადაც უფრო ღრმა, ვიდრე intended.The დეველოპერი პანელი იმას აჩვენებენ:

-<div id = "Tab1Content">
  -<div>
    -<div>
      -<div id = "Tab2Content">
        -<div>
           ..............................
                   </div>  <-საბოლოოდ აჩვენებს დაიხურა ყველა გზა ქვემოთ აქ!

ასე რომ,, თუ წავიდოდი $("# Tab1Content").დამალვა(), მინდა ასევე მალავს Tab2 და ვერც კი ნახოთ Tab2 თუ არ ასევე აჩვენებს Tab1.  მე გადაწერა და გაკრული კოდი დაყოფილია ვიზუალური სტუდია და ეს აჩვენა ყველა div-ს უგულებელყოფა up ლამაზად, ისევე, როგორც ისინი უნდა აკეთებს, ეძებს როგორც ამ:

-<div id = "Tab1Content">
  +<div>
  +<div>
-<div id = "Tab2Content">
  +<div>
  +<div>

მე სცემეს ჩემი უფროსი წინააღმდეგ კედელზე ხნით და შენიშნა, რომ ფაქტობრივი HTML კოდი იყო მომტანი ბევრი ცარიელი <div> tags, მოსწონს:

<სხეულის>

  <div id = "Tab1Content">

    <div id = "row1" />
    <div id = "row2" />

  </div>

  <div id = "Tab2Content">

    <div id = "row1" />
    <div id = "row2" />

  </div>

</სხეულის>

(აღნიშნული waaaaaaaaaaaay oversimplified.  ცარიელი div tags აბსოლუტურად ძალაშია. ზოგიერთი ჩემი <div> tags იყო სავსე შინაარსი, მაგრამ კიდევ ბევრი რამ არ იყო.  ჩამოვედი რეალიზაციის, რომ ჩემი <XSL:for-თითოეული> დირექტივა ასხივებენ მოკლე ფორმა div tags როდესაც XSL:for-თითოეული არ "აღმოაჩინა მონაცემები.  მე იძულებული HTML კომენტარის შევიდა გამომავალი, როგორც ნაჩვენებია:

image

 

მას შემდეგ, რაც გავაკეთე, რომ, ყველა div ის გაფორმებულია ლამაზად და ჩემი tab ჩართვის მუშაობა დაიწყო.

როგორც ყოველთვის, ვიმედოვნებ, რომ ეს ეხმარება ვინმე pinch.

</ბოლო>

გამოწერა ჩემი დღიური.

გამომყვეს Twitter-ზე http://www.twitter.com/pagalvin

დატოვე პასუხი

თქვენი ელ-ფოსტა არ გამოქვეყნდება. აუცილებელი ველები მონიშნულია *