1

我真的希望有人能够以此为我指明正确的方向,sp提前感谢:)

我需要获取 json 提要中的内容并使用一些 javascript 来获取嵌入式链接 - 我当时是通过 document.getElementsByTagName 获取的 - 并将它们转换为 window.open 函数。

我到目前为止

var links = document.getElementsByTagName('a');
var len = links.length;

for(var i=0; i<len; i++)
{
    links[i].target = "_blank";
}

这会在我的 url 上添加一个位置,但实际上我真正需要做的是将所有 url 设为 href 刺痛

<a href="http://myurl.com"</a>

并以纯 javascript 返回它们以调用函数

window.open('http://myurl.com', '_blank', 'location=yes');

希望这是有道理的,并感谢一些新手的帮助。阿利斯特

多一点...

Karaxuna - 感谢您的建议。虽然由于某种原因循环函数没有返回我需要的东西,但这可能是因为我试图使用它。

实际上,我正在尝试为 Phonegap 进行移动浏览器调用,对我的所有链接使用 inappbrowser 功能,以便它们在应用程序 webview 中打开,而不是在系统浏览器中打开。为此,我的所有链接都需要通过函数 window.open(' http://myurl.com ', '_blank', 'location=yes');

我正在使用 sencha touch 创建一个列表项点击,它从 json 提要中获取内容,我的代码看起来像

onMylistItemTap: function(dataview, index, target, record, e, eOpts) {
    dataview.up().push({
        xtype: 'panel',
        html: [ 
        "<div class='news_story'>" +
        "   <h4>" + record.get('title') + "</h4>" +
        "   <img src='" + record.get('mobile_url') + "' />" +
        "   <span>" + record.get('content') + "</span>" +
        "</div>"
        ],
        id: 'NewsDetailCard',
        scrollable: {
            direction: 'vertical',
            directionLock: true
        }
    });
    var links = document.getElementsByTagName('a');
    var len = links.length;

    for(var i=0; i<len; i++)
    {
        links[i].addEventListener('click', function(){
            window.open(this.href, '_blank', 'location=yes');
            return false;
        });
    }

},

但是,我没有使用您添加的点击功能打开链接。不知道出了什么问题。阿利斯特

4

1 回答 1

1
for(var i=0; i<len; i++)
{
    links[i].addEventListener('click', function(e){
        window.open(this.href, '_blank', 'location=yes');
        e.preventDefault();
    });
}
于 2013-07-25T09:34:30.983 回答