JQuery, как добавить и удалить на отделении, нажимает событие

Пользуйтесь библиотекой стандарта Сравнительного теста и различными тестами, доступными в направляющих (единица, функциональная, интеграция). Вот пример:

def test_do_something
  elapsed_time = Benchmark.realtime do
    100.downto(1) do |index|
      # do something here
    end
  end
  assert elapsed_time < SOME_LIMIT
end

, Таким образом, здесь мы просто делаем что-то 100 раз, время это через библиотеку Benchmark, и гарантировать, что это взяло меньше, чем количество времени SOME_LIMIT.

также можно найти эти ссылки полезными: ссылка Benchmark.realtime и эти Тест:: ссылка Единицы . Кроме того, если Вы в вещь 'чтения книг', я взял идею для примера от Гибкая веб-разработка с направляющими , который говорит все о различных типах тестирования и немного на тестировании производительности.

9
задан 10 July 2009 в 03:13
поделиться

2 ответа

Было бы немного проще использовать класс CSS вместо прямого изменения стиля. Таким образом, вы можете воспользоваться удобной функцией toggleClass для включения и выключения выделения. Также легко проверить, выделен ли div: div.is («. Highlighted») или div.hasClass («highlighted») сообщат вам.

<script type="text/javascript">
  $(document).ready(function() {
    $('div.click').click(function() {
      $(this).toggleClass('highlighted');
    });
  });

  $(function() {
    // Can use one CSS selector to find all three divs and bind them all at once.
    $('#div1, #div2, #div3').bind('click', click);
  });

  function click() {
    var p1 = $("#p1");

    if ($(this).is(".highlighted")) {
      p1.append(this.id + ",");
    }
    else {
      p1.text(p1.text().replace(this.id + ",", ""));
    }
  }

</script>

<style type="text/css">
  .highlighted {
    background: yellow;
  }
</style>
7
ответ дан 4 December 2019 в 23:07
поделиться

Мне нравится хранить другие функции в отдельном блоке от одного события обработки ready .

<script type="text/javascript" src="jquery-1.3.2.min.js"></script>

<script type="text/javascript">
    var divs = new Object();

    function click(event){
        var did=event.target.id;

        if($("#"+did).css('backgroundColor') == 'yellow')
            divs[did]=true;
        else
            divs[did]=false;

        AppendText();
    }
    function AppendText(){
       var txt="";
        for(var x in divs)
            if(divs[x]==true)
              txt +=x+",";

        $('#p1').html(txt);
    }      
</script>

Теперь щелчки соединения.

<script type="text/javascript">
    $(document).ready(function() {
      $('div.click').click(function() {
        var bg = $(this).css('backgroundColor');
        $(this).css({backgroundColor: 
                bg == 'yellow' || bg == 'rgb(255, 204, 204)' ? 
              'transparent' : 'yellow'});
      });
        $('#div1').bind('click', divclick);
        $('#div2').bind('click', divclick);
        $('#div3').bind('click', divclick);
    });
</script>
0
ответ дан 4 December 2019 в 23:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: