javascript - 使用 ajax 渲染来自 wikipedia api 的图像

标签 javascript jquery ajax api wikipedia

我正在尝试渲染维基百科文章的图像。

例如来自https://de.wikipedia.org/wiki/Appendizitis

为了避免跨域策略,我使用代理:

function imageWp() {

var word = 'Appendizitis';

$.ajaxPrefilter( function (options) {
  if (options.crossDomain && jQuery.support.cors) {
    var https = (window.location.protocol === 'http:' ? 'http:' : 'https:');
    options.url = https + '//cors-anywhere.herokuapp.com/' + options.url;
  }
});

$.get(
    'https://de.wikipedia.org/w/api.php?action=parse&format=json&prop=text&section=0&page=' + word + '&callback=?',
    function (response) {
        console.log("> ", response);
        $("#viewer").html(response);
});
}

我怎样才能只解析图像? 或者,有没有更好的方法使用 javascript、jquery 和 ajax?我不想使用 PHP。

最佳答案

function imageWp() {

    var word = 'Appendizitis';

    $.ajaxPrefilter(function (options) {
        if (options.crossDomain && jQuery.support.cors) {
            var https = (window.location.protocol === 'http:' ? 'http:' : 'https:');
            options.url = https + '//cors-anywhere.herokuapp.com/' + options.url;
        }
    });

    $.get(
        'https://de.wikipedia.org/w/api.php?action=parse&format=json&prop=text&section=0&page=' + word + '&callback=?',

    function (response) {
        var m;
        var urls = [];
        var regex = /<img.*?src=\\"(.*?)\\"/gmi;

        while (m = regex.exec(response)) {
            urls.push(m[1]);
        }

        urls.forEach(function (url) {
            $("#viewer").append('<img src="' + window.location.protocol + url + '">');
        });
    });
}

imageWp();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="viewer"></div>

关于javascript - 使用 ajax 渲染来自 wikipedia api 的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29983413/

相关文章:

javascript - 单击特定子元素时运行动画,但对所有其他子元素不执行任何操作

javascript - 用于服务器控件的 jquery

jquery - 验证码:验证困难

jquery - 链接一系列 ajax 调用

javascript - jquery 单击一个隐藏的复选框

javascript - 在 Javascript 中访问事件处理程序内的类成员变量

javascript - 在对象定义中访问对象的属性

javascript - jQuery 自动完成的错误

jquery - ASP.net MVC 3 导航 Accordion 图像路径

JavaScript 和 Ajax 响应