我正在编写符合标准的XHTML严格1.0,因此在锚元素中包含HTML "target“属性是不行的。
我读过两种使用Javascript的根本不同的方法:
rel='external'的所有链接,并追加target='_blank'属性。onClick函数,该函数用window.open().打开窗口这些方法现在已经有5-6年的历史了,所以我希望从那以后一切都会巩固起来。做这件事最好的方法是什么?
发布于 2009-06-30 20:23:39
使用JQuery和Iframes (或者是一个对象)
发布于 2009-06-30 20:20:47
没有新的方法来做这件事,所以你已经发现的就是它的存在。
第一种方法是作弊。您正在使用Javascript在页面加载后将非标准标记放到页面中,这样最初加载的标记就会有效。一旦脚本运行,代码就不再有效了。
从另一个角度看,第二种方法似乎也更好。当页面加载时,链接将立即按预期工作,与第一个方法相比,在页面上的所有内容加载后才会更改链接。如果用户在加载最后一个图像之前快速单击某个链接,则仍然希望它转到一个新窗口。
发布于 2009-06-30 21:24:50
完整的弹出窗口经常被现代浏览器所屏蔽。
如果你想要一种好的、跨平台的方法来创建轻量级的弹出式窗口(实际上他们共享自己的父窗口),那么也许可以使用像ExtJ这样的JavaScript小部件库。
下面是我如何在我的JavaScript应用程序中创建“帮助”弹出窗口。
// Loads help for just one window, i.e. non-tabbed.
function helpShow (help_filename, help_title) {
if (! help_filename) { return; }
var help_url = '/edit/help/' + help_filename + '.html';
if (help_window == null) {
help_window = new Ext.Window ({
title: help_title,
autoLoad: help_url,
autoScroll: true,
closeAction: 'hide',
width: 460,
height: 600,
items: new Ext.Panel ()
});
}
help_window.setVisible (true);
}有些CCS也使它们更漂亮。
https://stackoverflow.com/questions/1065742
复制相似问题