Untuk setiap hari, saya melakukan foreach lain untuk mengembalikan nilai css top:

$('.day').each(function() {
  $(this).find('.event').each(function() {
    var top = $(this).css('top');
  });
});

Saya ingin tahu apakah saya dapat membandingkan 2 nilai top?
Saya membutuhkan itu karena, jika 2 top nilainya sama, saya menambahkan kelas baru.

EDIT:

Sebagai contoh :

Acara pertama : 07-08-2017 jam 8 pagi

Acara kedua : 07-08-2017 jam 8 pagi

Acara ketiga : 07-08-2017 jam 2 siang

Di situs web saya:

-8am is 'top: 50px'
-2 pm is 'top: 600px'

If first-event->top-position == second-event->top-position

Saya harap, ini akan membantu Anda.

1
Reitrac 16 Agustus 2017, 17:50

2 jawaban

Jawaban Terbaik

Di sini Anda dapat membandingkan posisi teratas .day dengan posisi teratas anak-anaknya, semoga ini yang Anda maksud.

Diedit untuk membandingkan posisi teratas acara dibandingkan dengan acara sebelumnya untuk hari itu

var pos;
$('.day').each(function(__idx, __el) { 
  pos = false;    
  $(__el).find('.event').each(function(_idx, _el) {
       if(pos){
           if($(_el).position().top === pos){
               //do your thing here
           }
      }
      pos = $(_el).position().top;
  });
});
0
Eric 16 Agustus 2017, 15:15

Anda dapat menggunakan operator ternary atau if/else. Saya lebih suka ternary dalam kasus seperti itu.
Anda dapat membandingkan nilai dengan

var top = topValRec === topValOld? /*value if condition is true*/ : /*  value if condition is false */ 

Di sini topValRec adalah nilai terbaru dan topValOld adalah nilai yang perlu dibandingkan dengan

Jadi jika saya ingin top memiliki nilai 10 jika kondisinya benar dan 20 jika kondisinya salah saya akan menulis

var top = topValRec === topValOld ? 10 : 20

ini

var position;
$('.day').each(function() {
    position = false;
    $(this).find('.event').each(function() {
        var classToBeAdded = $(this).position().top === position ? "class_Name_If_True" : "class_Name_If_False";
        $(this).addClass(classToBeAdded);
  });
 position = $(_el).position().top;
});
0
Syed Huzaifa Hassan 17 Agustus 2017, 16:25