我使用下面的jquery将CSS样式注入到<head>的<style id="customizer-preview">标记中。
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赋值。如果有,请将其清除并替换为新值。
发布于 2018-06-24 10:59:48
在@Olian04的帮助下,我用.html替换了.append
wp.customize( 'site_title_color', function( value ) {
value.bind( function( newval ) {
$( '#customizer-preview' ).html( '.site-title { color: ' + newval + ' ; }' );
} );
} );这使得问题中的第3-5行变得不必要。
https://stackoverflow.com/questions/51001831
复制相似问题