我想通过jquery
在我的选择器之后添加标题<?php the_title(); ?>
('a img').after('<span>the title here</span>');
答案 0 :(得分:1)
PHP代码在服务器上解释,浏览器中的jQuery代码(PHP解释器完成后很久)。他们无法真正看到对方。
你可以做的是将the_title()
的值放在页面的某个元素中,然后使用jQuery找到它并添加它:
var title = $('#the_title').text();
$('a img').after('<span>' + title + '</span>');
[编辑]如果你有几个标题,那么你必须以某种方式将它们映射到图像。有很多可能的方法可以做到这一点:
您可以将图像的名称发送到PHP服务器,让它查找标题并将其发回。查看$().json()
。
您可以将所有标题放在某些HTML中,将其隐藏在<div style="display: none;">
中。在您的jQuery中,您可以将图像映射到标题。
答案 1 :(得分:0)
亚伦说的话。
但也许使用自定义数据属性(因此它在HTML5中验证)。
在你的PHP中:
<img data-title="<?php the_title(); ?>" src="..." />
-
在javascript(jQuery)中:
$('a img').each(function(){
var title = $(this).attr("data-title");
$(this).after('<span>' + title + '</span>');
});
-
未经测试,但这就是主意。经过测试。