target =“_ blank”的替代品

时间:2010-12-09 16:24:43

标签: html

target="_blank"的最佳替代方法是什么?

以下是我们使用的doctype和html声明:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

3 个答案:

答案 0 :(得分:3)

根据XHTML Transitional,它才有效。你可以继续使用它们。根据XHTML Strict,它只是无效的。

无论如何,对于这种情况,您可以通过JavaScript的一点帮助来解决这个问题。将所有target="_blank"替换为rel="ext"(这是外部链接的事实标准)并在页面加载时运行以下(jQuery)脚本:

$(document).ready(function() {
    $('a[rel=ext]').attr('target', '_blank');
});

答案 1 :(得分:0)

类似于BalusC给出的答案,但无需修改html:

http://jsfiddle.net/vC39V/4/

(function () {
    "use strict";
    $(document).ready(function () {
        var LinkTest = {};
        // External Links
        LinkTest.externalLinks = function () {
            $('a[href^=http]').click(function () {
                window.open(this.href);
                return false;
            });
        }();

    });
})(jQuery);

答案 2 :(得分:-1)

使用JS在新窗口中打开页面。

<a href="test.html" onclick="return ! window.open(this.href);">New Window Open</a>