实现一个JSONP

2020-07-24  本文已影响0人  看到这朵小fa了么

回调函数调用后需要将添加的script标签进行删除,并将函数置空

function myJSONP(url, callback) {
    let id = Symbol()
    window[id] = function(result) {
        if(callback) {
            callback(result)
        }
        let getId = document.getElementById('id')
        getId.parentNode.removeChild('id')
        window[id] = null
    }
    url = url.replace('callback=?', 'callback='+id)
    let script = document.createElement('script')
    script.setAttribute('id', id)
    script.setAttribute('src', url)
    script.setAttribute('type', text/javascript)
    document.body.appendChild(script)
}
上一篇下一篇

猜你喜欢

热点阅读