如何防止CSS/JavaScript在特定的选择器上使用Id

How to prevent CSS/JavaScript on specific selectors using Id?

本文关键字:选择器 Id CSS 何防止 JavaScript      更新时间:2023-09-26

我使用这个JavaScript在我的代码中为单选按钮和复选框添加CSS类。

    $('input[type="checkbox"]').iCheck({
        checkboxClass: 'icheckbox_flat-blue'
    });
    $('input[type="radio"]').iCheck({
        radioClass: 'iradio_flat-blue'
    });

我在我的HTML页面中遵循布局和内容现象,换句话说,我有一个layout. HTML,它包含了所有页面中相似的所有部分和划分,我在我的content. HTML页面中使用这种布局来呈现内容。

|----------------------|                      |----------------------|
|   Header             |                      |   Header             |
|======================|                      |======================|
|                      |                      |                      |
|                      |                      |                      |
|     Content 1        |                      |    Content xyz       |
|                      |                      |                      |
|                      |                      |                      |
|======================|                      |======================|   
| footer               |<-----Layout--------->| footer               | 
|----------------------|                      |----------------------|

所有的CSS和脚本都在布局中,因为我几乎在每个内容页面中都使用它们。我的内容页包含HTML输入字段,如文本,无线电等。上面的脚本是在布局文件中添加CSS类的单选按钮和复选框在我的内容页面。但是在同一内容页面的某些地方,我不希望这个脚本在我的输入字段上工作。我想防止这个脚本上的两个单选按钮在同一内容页面,它被用于其他单选按钮。有没有办法通过给他们一个id来做到这一点?

你可以在输入单选中设置一个你不想改变的类:

<input type="radio" class="not-apply" />

并在jQuery选择器中使用:not操作来排除该类:

$('input[type="checkbox"]:not(.not-apply)')

如果你不使用jQuery,只有纯javascript和css,你可以使用这个语法

document.querySelectorAll('span.test:not(.asd)');
不CSS