1

这个想法是在 IE 7/8 中制作一些边框半径效果,所以我决定使用jquery.corner.js库。为了使其更通用,我想编写一些脚本,将corner()函数应用于具有border-radius 属性的页面中的所有元素。

例如,对于这个元素

.someElement
{
    border-radius:10px;
}

函数必须执行以下操作

   $(".someElement").corner("10px");

问题是我想对所有元素应用圆角,包括动态添加的元素和在某些操作(悬停、单击等)中继承边框半径属性的元素。这可能吗?

4

2 回答 2

1

您需要声明一个函数,将您的 css 应用于每次更改。要检测 css 样式更改,请参见此处:

事件检测何时使用 Jquery 更改 css 属性

然后,您需要在样式更改和 dom 树更改时调用该函数(每次将某些内容附加到页面中时)...。

我建议您使用特定的类来应用边界半径 css。这样,您可以通过 jQuery 类选择器选择圆角元素。

于 2012-10-03T11:47:25.437 回答
1

您应该有一个通用 css 类,用于所有具有圆角边框的元素,然后在选择器中使用该类。

您必须在文档就绪处理程序中执行此操作。这当然只会对当前存在的元素应用圆角边框。如果要覆盖使用 ajax 加载的元素,可以执行以下操作:

$(document).ajaxSuccess(function(e, xhr, settings)
{
    $(xhr.responseText).find(".class-that-applies-rounded-borders").corner("10px");
});
于 2012-10-03T11:55:10.400 回答