У меня есть цикл wordpress, который использует шаблон для эхо-типа моего настраиваемого типа сообщения на странице.Различные функции для каждого сообщения в цикле wordpress
Это echos те же имена классов и html-структуры, но разные содержания.
Что я хочу сделать, это использовать javascript, чтобы добавить функциональность, например, onmousemove
в каждое сообщение, и отобразить различный контент для каждого сообщения, эхом в цикле.
Но все дело в том, как я могу настроить таргетинг на каждое сообщение отдельно, когда все они имеют одинаковые имена классов и тот факт, что цикл выполняется до того, как javascript может даже существовать, поэтому ссылки нет.
Страница шаблона
query_posts(array('post_type' => 'spark_stars'));
if (have_posts()) :// Start the Loop.
while (have_posts()) : the_post();
get_template_part('content-stars', get_post_format());
endwhile;
часть шаблона: контент-звезды
<div class="entry-content">
<div class='div' style='display:inline-block;'>
<a href='<?php echo esc_url(get_permalink()); ?>'>
<img style='display:block;' class='star'
src='<?php echo get_template_directory_uri() . "/images/star_0.png";?>'>
</a>
<div class='star_div_text' style='display:none;'>
<p class='star_text'>
<?php echo get_post_meta(get_the_ID(),'data_text', true);?>
</p>
</div>
</div>
</div>
Javascript поставлен в очередь
window.star1 = document.getElementsByClassName('star')[0];
star1.onmousemove = function(e)
{
// some functions that happen on star1
// what about star2?
// how will i reference that or even know how many stars are on the page
}
** проход по значению ** вы можете достичь своей цели ... 'onmousehove {функция ($ i)} ' –
Можете ли вы продемонстрировать это, потому что' star1' только вызывается, когда вызывается его собственное событие. Как вы можете передавать что-либо в любом месте при запуске события и ссылаться на «star1»? –
ОК. вы можете использовать ** 'id' ** для функции' mousehover' вместо класса –