Jquery将链接更改为div

时间:2014-08-09 18:33:02

标签: javascript jquery

我的网站上有这些代码(wordpress网站):

<div id="51" class="wrap-box">
<div class="favorit">
<a class="add" href="?wpfpaction=add&postid=51" rel="nofollow" ></a>
</div>
</div>

和这个javascript:

jQuery(document).ready( function($) {
    $('.add, .remove').live('click', function() {
        dhis = $(this);
        wpfp_do_js( dhis, 1 );    
        return false;
    });
});
function wpfp_do_js( dhis, doAjax ) {
    url = document.location.href.split('#')[0];
    params = dhis.attr('href').replace('?', '') + '&ajax=1';
    if ( doAjax ) {
        jQuery.get(url, params, function(data) {
                dhis.parent().html(data);
                if(typeof wpfp_after_ajax == 'function') {
                    wpfp_after_ajax( dhis ); // use this like a wp action.
                }
            }
        );
    }
}

当用户点击带有class="add"的链接时,视频会添加到收藏夹,并且链接更改为<a class="remove" href="?wpfpaction=remove&postid=51" rel="nofollow"></a>而不更改(或在网址中显示?wpfpaction ...)网站网址用户打开(执行?wpfpaction = add&amp; postid = 51但页面未被更改)。 我想将代码更改为:

<div id="51" class="wrap-box">
<div class="add" style="cursor:pointer;"></div>
</div>

我怎样才能使这一切成为jquery的全部,而不再显示<a>标签。因此,用户现在点击div class="add"整个过程是相同的,但是来自javascript。

可以这样做吗?

1 个答案:

答案 0 :(得分:0)

你可以这样做:

$(document).ready(function() {
  $('.add').on('click', function() {
    var link = $(this);
    var id = $(this).prev('.wrap-box').attr('id');
    var url = location.href.split('#')[0];
    var params = 'wpfpaction=add&postid=' + id + '&ajax=1';
    $.get(url, params, function(data) {
      link.parent().html(data);
      if (typeof wpfp_after_ajax === 'function') {
        wpfp_after_ajax(link);
      }
    });
  });
});