Javascript:检查CSS选择器的值并将其替换

时间:2018-06-23 13:51:22

标签: javascript jquery wordpress

我正在使用以下jquery将CSS样式注入<style id="customizer-preview">中的<head>标记中:

wp.customize( 'site_title_color', function( value ) {
    value.bind( function( newval ) {
        if ( $( '#customizer-preview .site-title' ).length > 0 ) {
             $( '#customizer-preview .site-title' ).remove();
        }
        $( '#customizer-preview' ).append( '.site-title { color: ' + newval + ' ; }' );
    } );
} );

它工作正常,但不会删除先前输入的值,而只是添加新值,使CSS混乱。 3-5行是问题所在。基本上,我试图检查是否已经有一个分配给选择器.site-title的值。如果存在,请清除它并用新值替换它。

1 个答案:

答案 0 :(得分:0)

在@ Olian04的帮助下,我将.append替换为.html

wp.customize( 'site_title_color', function( value ) {
    value.bind( function( newval ) {
        $( '#customizer-preview' ).html( '.site-title { color: ' + newval + ' ; }' );
    } );
} );

这使问题中的第3-5行变得不必要。