weixin_33698043 2018-01-21 13:16 采纳率: 0%
浏览 360

href在锚点上不起作用

I have the following piece of javascript. It is using Ajax to get a quote from an API. The quote is presented at the quote div, but the href is not being refreshed at the twitterAnchor.

    jQuery('#button').on('click', function(){
            
        jQuery.ajax({
        url: "http://quotesondesign.com/wp-json/posts?filter[orderby]=rand&  filter[posts_per_page]=1&_jsonp=mycallback",
        type: 'GET',
        dataType: "jsonp",
        success: function(json){
            document.getElementById('quote').innerHTML = json[0].content;
            document.getElementById('twitterAnchor').href =  "https://twitter.com/intent/tweet?text=" + json[0].content;    
            }
        });
    });
<!-- Here is the anchor. -->

      <div id="tweet">
          <a id ="twitterAnchor" href="" class="twitter-share-button" target="_blank" >Tweet</a>  
      </div>

When I click the twitterAnchor the page is refreshed. The console shows me nothing, does anybody have a hint of what is happening?

</div>
  • 写回答

3条回答 默认 最新

  • 衫裤跑路 2018-01-21 13:19
    关注

    The id you are selecting is button, not twitterAnchor. So try jQuery('#twitterAnchor')

    Secondly you will need to prevent the default behavior of the browser when an anchor is clicked:

    jQuery('#twitterAnchor').on('click', function (e) {
      e.preventDefault();
      jQuery.ajax({
        url: "http://quotesondesign.com/wp-json/posts?filter[orderby]=rand&  filter[posts_per_page]=1&_jsonp=mycallback",
        type: 'GET',
        dataType: "jsonp",
        success: function (json) {
          document.getElementById('quote').innerHTML = json[0].content;
          jQuery(this).attr("href","https://twitter.com/intent/tweet?text=" + json[0].content);
        }
      });
    });
    
    评论

报告相同问题?

悬赏问题

  • ¥15 软件定义网络mininet和onos控制器问题
  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。