0

我正在使用JasmineJasmine-jQuery来测试我的应用程序中的 Javascript。我设置了一个 HTML 固定装置,已成功测试显示和隐藏元素以及其他交互,但到目前为止,我无法让它正确设置和读取 z-index 值。

这是一个失败的测试:

    it("understands z-index values", function(){
      loadFixtures('input_tips.html');
      $('span.tip:first').css('z-index',200);
      expect($('span.tip:first').css('z-index')).toEqual(200);
    });

该测试失败;z-index 读作“自动”。

到目前为止,我已经尝试过:

  • 在我的测试中设置和检查其他 CSS 属性,例如颜色。这工作正常。
  • 在我的控制台中使用 jQuery 设置和检查 z-index 值。这工作正常。
  • 将 z-index 设置为字符串值而不是数字。没什么区别。
  • 在 HTML“样式”标签中硬编码 z-index。没什么区别。

我做错了什么,还是这是一个错误?

4

1 回答 1

1

发生这种情况是因为 z-index 仅在位置属性存在并设置为“相对”或“绝对”时才有意义。请尝试将其更改为:

it("understands z-index values", function(){
  loadFixtures('input_tips.html');
  $('span.tip:first').css({'position':'relative','z-index':200});
  expect($('span.tip:first').css('z-index')).toEqual('200');
});
于 2011-06-27T15:48:31.183 回答