如何单击动态创建的 link,然后从该 link 创建一个新的动态页面?

How to click on a dynamically created link to then create a new dynamic page from that link?

我写了一个自定义 API(node.js 应用程序),它从 medium.com 获取有关博客的信息,现在有

  1. 文章的author/main图片,
  2. 标题,
  3. link 到 medium.com 上的文章(冗余),
  4. 整篇文章的文本,在 JSON 输出中。

样本API/JSON:

{
"img": [
"https://upload.wikimedia.org/wikipedia/commons/4/42/Blog_%281%29.jpg"
],
"title": [
"The old and the new or not so new: Java vs JavaScript"
],
"link": [
"https://medium.com/@aki9154/the-old-and-the-new-or-not-so-new-java-vs-javascript-760f84e87610?source=rss-887f1b1ddb75------2"
],
"desc": [
"<p>It’s funny how the name JavaScript makes you believe that it is somehow..."
]
}

然后我正在轮询这个 API/JSON 并以缩略图格式吐出输出,目前基本 html(没有 design/CSS)。

我卡住的地方是当用户点击缩略图时我需要确保显示正确的文章?!

为此我需要在单击 thumbnail/article 时显示一个新页面,我可以使用上面 JSON 中的 #4 作为动态创建的新页面的输出并很好地输出)

我现在面临的问题是点击动态创建的link如何动态生成正确的文章?

现在当我点击缩略图时没有任何反应,这就是这个项目 link 显示的...

我做了一些 Whosebug 研究并阅读了一些 jQuery 文档(事件传播和更多...)并且能够对 index.js 进行更改,下面是它的样子但没有有效,任何帮助将不胜感激...

index.js:

$(function () {
  var desc = "";
  function newWin() {
    var w = window.open();
     $(w.document.body).html('<p>'+desc+'</p>');
   }
    var $content = $('.cards-in-grid');
    var url = 'link-for private use now';
    $.get(url, function (response) {
      var output = '';
      console.log(response);
      $.each(response, function (k, item) {
      title = item.title;
      var author = item.img;
      desc = item.desc;
      output += '<li><img src="'+author+'" alt=""><h2>' + title + '</h2></li>';
      $(".cards-in-grid ul").on("click", "li", function(){
        newWin;
      });
      return k;
    });
    $content.html(output);
   });
 });

`

$(function () {
    var $content = $('.cards-in-grid');
    var url = 'link-for private use now';
    $.get(url, function (response) {
      var output = '';
      var list = "li";
      $.each(response, function (k, item) {
        var listNum = list+k;
        var idy = "#"+listNum;
        var desc = "";
        title = item.title;
        var author = item.img;
        desc = item.desc;
        //GIVE ID to each LI using a variable
        output += '<li id="'+listNum+'"><img src="'+author+'" alt=""><h2>' + 
        title + '</h2></li>';
        $content.html(output); 
        $content.on("click",idy, function(){
          var w = window.open();
          $(w.document.body).html('<p>'+desc+'</p>');
        });
        return k;
      });
    });
 });

这很完美,经过一些思考和琢磨,终于成功了! 如果对您有帮助,请点个赞!谢谢!