gpt4 book ai didi

jquery - CSS 命名空间和覆盖 jquery 选择器

转载 作者:行者123 更新时间:2023-11-28 13:29:10 25 4
gpt4 key购买 nike

我希望覆盖基本的 jQuery 选择器,以便所有 CSS 类 ( $('.classname') ) 在任何 jQuery 选择器中,包括 .find(.classname) , .parents(.classname)等以“命名空间”为前缀。在上面的示例中,我的 jQuery 代码看起来像 $('.classname') , 但那会被翻译成 $('.SomeCssNamespace_classname') .

$('.classname') 的 HTML选择器将匹配如下所示:
<div class="SomeCssNamespace_classname" />

最重要的是我必须添加智能,可能以 regex 的形式,这只会对类名执行此操作,而不会对 id 或标签选择器执行此操作。例如$('#someId')不会被翻译成 $('#SomeCssNamespace_someId') .

另外,jQuery.addClass()jQuery.removeClass()必须重写方法以添加相同的命名空间。

最佳答案

我的解决方案是编写您自己的函数来执行此操作...例如:

prefixClassSelector = function(prefix,class_name) {
return $('.' + prefix + '_' + class_name);
}

然后你可以这样调用它,它仍然是可链接的

prefixClassSelector('someNamespace','myclass').hide();

关于jquery - CSS 命名空间和覆盖 jquery 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12517013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com