Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.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
Jquery 准备动态';a';标记到';李';具有特定类的元素_Jquery_Wordpress - Fatal编程技术网

Jquery 准备动态';a';标记到';李';具有特定类的元素

Jquery 准备动态';a';标记到';李';具有特定类的元素,jquery,wordpress,Jquery,Wordpress,请看下面的代码: <ul id="all-movies"> <li class="movie"> <img src="pic.jpg" /> </li> <li class="movie featured"> <img src="pic.jpg" /> </li> <li class="movie featured">

请看下面的代码:

<ul id="all-movies">                    
  <li class="movie">
    <img src="pic.jpg" />
  </li>
  <li class="movie featured">
    <img src="pic.jpg" />
  </li>
  <li class="movie featured">
    <img src="pic.jpg" />
  </li>
</ul>
将替换为我的网站

我怎样才能让它工作?我尝试了以下方法,但没有成功:

$(“#所有电影里”).hasClass('featured').prepend('')

注意:正在动态添加
特色

-编辑-这是我用来动态添加
featured
类的代码:

function wpse80098_filter_post_class( $classes ) {
    global $post;
    if ( 'yes' == get_post_meta( $post->ID, '_jsFeaturedPost', true ) ) {
        $classes[] = 'featured';
    }
    return $classes;
}
add_filter( 'post_class', 'wpse80098_filter_post_class' );

hasClass
返回一个没有
prepend
方法的布尔值,您可以使用类选择器

$("#all-movies li.featured").prepend('<a href="<?php bloginfo("url"); ?>/hello"></a>');
$(“#所有电影都有特色”).prepend(“”);
或:

$(“#所有电影li”).filter('.featured').prepend('');

$(文档).ready(函数(){
var yourURL=“/hello”;
$(“#所有的电影都有特色”).prepend(“”);
});

您可以尝试使用
.find()
函数:

var url = "<?php bloginfo('url'); ?>/hello";
$('ul#all-movies').find('li.featured').prepend("<a href='"+url+"'></a>");
var url=“/hello”;
$('ul#all movies').find('li.featured').prepend(“”);
您是否尝试过:

$("#all-movies li.featured").prepend('<a href="<?php bloginfo('url'); ?>/hello"></a>');
$(“#所有电影都有特色”).prepend(“”);
这是假设
内容实际上是在您的服务器上处理的,并且不会到达客户端。

$('li.featured')。每个(函数(){
$('li.featured').each(function(){
   $(this).prepend('<a href="<?php bloginfo("url"); ?>/hello"></a>');
});
$(this.prepend(“”); });
这样行吗?即使在前置程序正常工作时,页面呈现PHP是否已经太晚了?PHP是在服务器端完成的,当您在前端时,请求已经在客户端上了。您可能需要将bloginfo('url')存储在本地javascript变量(var bloginfo=“”;)中,然后在前置词中使用该变量。动态添加的类应该不会有问题,只要在您尝试将
添加到类中之前添加这些类。如果动态添加
特色
,为什么不使用相同的代码在php文件中添加
bloginfo('url')
?我在上面的帖子中添加了我正在使用的代码。@John你在使用哪个wordpress主题?我尝试了这两个,但都不起作用。我认为这是因为
特性类是通过function.php动态添加的。有解决方法吗?@John您是否已将代码放入文档就绪处理程序中<代码>$(文档).ready(函数(){})
var url = "<?php bloginfo('url'); ?>/hello";
$('ul#all-movies').find('li.featured').prepend("<a href='"+url+"'></a>");
$("#all-movies li.featured").prepend('<a href="<?php bloginfo('url'); ?>/hello"></a>');
$('li.featured').each(function(){
   $(this).prepend('<a href="<?php bloginfo("url"); ?>/hello"></a>');
});