【发布时间】:2014-10-11 11:26:54
【问题描述】:
我有这个脚本:(动态创建<li> 元素)
echo '<div class="pagination"><ul>' . "\n";
// Previous Post Link.
if ( get_previous_posts_link() )
{
printf( '<li>%s</li>' . "\n", get_previous_posts_link('Prev') );
}
// Link to first page, plus ellipses if necessary.
if ( ! in_array( 1, $links ) )
{
$class = 1 == $paged ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );
if ( ! in_array( 2, $links ) )
{
echo '<br><br>';
}
}
// Link to current page, plus 2 pages in either direction if necessary.
sort( $links );
foreach ( (array) $links as $link )
{
$class = $paged == $link ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
}
// Link to last page, plus ellipses if necessary.
if ( ! in_array( $max, $links ) )
{
if ( ! in_array( $max - 1, $links ) )
{
echo '<br><br>' . "\n";
}
$class = $paged == $max ? ' class="active"' : '';
printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
}
// Next Post Link.
if ( get_next_posts_link() )
{
printf( '<li>%s</li>' . "\n", get_next_posts_link('Next') );
}
echo '</ul></div>' . "\n";
我想在单击<li> 时禁用<li> 元素,直到函数完成其工作。这是我的点击事件:
jQuery('.pagination > ul > li > a').live('click', function(e)
{
// disable <li> elements.
jQuery('.postMain').load(link + ' .postMain', function()
{
// enable <li> elements.
});
});
我使用了attr("disabled", "disabled"),但没有成功。在链接加载之前,我应该怎么做才能禁用所有 <li> 元素。任何帮助将不胜感激。
【问题讨论】:
-
disabled属性仅适用于表单元素。li不是表单元素。 -
哦,我明白了。还有其他解决方案吗?
-
刚刚注意到您正在使用 jquery live()。根据您使用的 jquery 版本,这可能不起作用,因为从 jquery 1.7 开始不推荐使用 live(),您应该调整以使用 jquery on()。供参考:api.jquery.com/live 和 api.jquery.com/on
-
@user3266957 解决什么问题?禁用
li元素?你不能这样做 -
@matthias_h 是的,我使用的是 jquery 1.11。
标签: javascript jquery html