Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery seletor中的可选参数?_Javascript_Jquery - Fatal编程技术网

Javascript JQuery seletor中的可选参数?

Javascript JQuery seletor中的可选参数?,javascript,jquery,Javascript,Jquery,我试图在JQuery中创建一个选择器,当单击文档中的任意位置时,该选择器将淡入多个列表中的元素。现在有两个列表,kiosks和profiles。我用于函数的代码如下所示: $(document).on('click', function( e ){ $( '.profile:not(".default") .name:not(".selected") .rename' ).fadeIn(80); $( '.kiosk .name:not(".selected") .rename'

我试图在JQuery中创建一个选择器,当单击文档中的任意位置时,该选择器将淡入多个列表中的元素。现在有两个列表,
kiosks
profiles
。我用于函数的代码如下所示:

$(document).on('click', function( e ){
    $( '.profile:not(".default") .name:not(".selected") .rename' ).fadeIn(80);
    $( '.kiosk .name:not(".selected") .rename' ).fadeIn(80);
});
是否有任何方法可以添加可选的选择器,以便如果项目是一个配置文件,它也会排除
默认值
,但其他任何名称都会使用这些规则

编辑:我想做的是把这个函数变成一行,这样它就会是这样的:

$(document).on('click', function( e ){
    $( '[profile:not("default") .name:not("selected") .rename' ).fadeIn(80);
});
以下是附加了数据绑定的HTML:

    <!-- Profiles -->
    <div class="profiles">
        <h1>Profiles</h1>
        <div data-bind="template: { name: 'profilestempl', foreach: $root.profiles }"></div>
    </div>

    <script type="text/html" id="profilestempl">
        <div class="profile" data-bind="css: { 'default' : !canChange() }">
            <div class="name" data-bind="css: { 'selected' : isSelected }">
                <input type="text" data-bind="hasfocus: $data.isSelected, value: tempName, enable: canChange(), valueUpdate: 'keyup'" />
                <span class="rename" data-bind="click: $root.selectProfile">q</span>
            </div>
        </div>
    </script>

    <!-- Kiosks -->
    <div class="kiosks">
        <h1>Kiosks</h1>
        <div data-bind="template: { name: 'kioskstempl', foreach: $root.kiosks }"></div>
    </div>

    <script type="text/html" id="kioskstempl">
        <div class="kiosk">
            <div class="name" data-bind=" css: { 'selected' : isSelected }">
                <input type="text" maxlength="30" data-bind="hasfocus:$data.isSelected, value:tempName, valueUpdate: 'keyup' " />
                <span class="rename" data-bind="click: $root.selectKiosk">q</span>
            </div>
            <select data-bind="options: $root.profiles, optionsText: 'name', value: profile"></select>

        </div>
    </script>

轮廓
Q
亭
Q

如果您的目标是在一行上完成,您可以使用


为了在这里获得最好的帮助,您还应该显示相关的HTML。我正在尝试简化代码,以便将来可以按照
profile
kiosk
添加更多类,而无需添加更多
fadeIn()
事件。我不确定这是否真的可能。
$(document).on('click', function( e ){
    $( '.profile:not(".default") .name:not(".selected") .rename, .kiosk .name:not(".selected") .rename' ).fadeIn(80);
});