Jump to content
  • 0

Как вынести тег target для img в таблицу css в версии XHTML


hardtur
 Share

Question

13 answers to this question

Recommended Posts

  • 0
А если посетитель хочет иметь открытыми несколько фотографий и при этом не уходить со страницы.

то он вполне способен выбрать опцию "открыть в новом окне" или "открыть в новом табе". а принудительно открывать имеет смысл только баннерокрутилки

Link to comment
Share on other sites

  • 0
А сюда выложить религия не позволяет?

Пожалуйста:

1) Создать в корне сайта папку js

2) Залить в эту папку вот эти два файла:

a) Файл 1) imgpreview.html:

<html>
<head>
<title>Просмотр изображения</title>
</head>
<script language="JavaScript">
//<!--
function imgLoad()
{
document.images[0].src = opener.img.src;
document.images[0].width = opener.img.width;
document.images[0].height = opener.img.height;
}

function winClose() {
if (event.keyCode == 27)
window.close();
}
document.attachEvent("onkeypress", winClose);
//-->
</script>
<body leftmargin="0" rightmargin="0" marginwidth="0" topmargin="0" marginheight="0" scroll="no" onclick="window.close()" onLoad="imgLoad()">
<table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%">
<tr><td align="center" valign="middle"><img src="" border="0"></td></tr>
</table>
</body>
</html>

:) Файл 2) imgpreview.js:

var PICPATH = "";	// путь к картинкам (в конце обязательно слеш)
var path_to_imgpreview = "/js/imgpreview.html";//путь к файлу, где будет открываться картинка

var ivlId = -1;
var win = null;
img = new Image();


function imgpreview(imgSrc)
{
if(win) win.close();
img = new Image();
img.src = PICPATH + imgSrc;
if(img.complete)
imgComplete();
else {
if(ivlId != -1) window.clearInterval(ivlId);
ivlId = window.setInterval("imgComplete()", 100);

}
}

function imgComplete() {
if(img.complete) {
window.clearInterval(ivlId);
ivlId = -1;
var WMAX = screen.availWidth - 2, HMAX = screen.availHeight - 26;
// Resize image to fit into the rect (0,0,WMAX,HMAX)
if(!(WMAX > img.width && HMAX > img.height)) {
var r1 = img.width / img.height;
var r2 = WMAX / r1;
if(r2 > HMAX) {
img.height = HMAX;
img.width = HMAX * r1;
}
else {
img.width = WMAX;
img.height = r2;
}
}
var x, y, w, h;
x = Math.round((screen.availWidth - img.width) / 2);
y = Math.round((screen.availHeight - img.height) / 2);
w = img.width;
h = img.height;

var winParams = "left=" + x + ",top=" + y + ",width=" + w + ",height=" + h;
win = window.open(path_to_imgpreview, "", "toolbar=0,scrollbars=0,location=0,directories=0,status=0,menubar=0,resizable=0," + winParams);
win.focus();
}
}

3) В тегах

прописать вот это: <script language="JavaScript" src="/js/imgpreview.js">

4) У самой картинки прописать это:

pics_small.jpg"

Но вообще конечно геморой получается, но зато покрасивей будет, имхо... :D

Link to comment
Share on other sites

  • 0

В поиске наш?л ещ? варианты на js, но многие авторы справедливо замечали, что можно нарваться на блокирование всплывающих картинок браузером.

Честно говоря, меня сбило с толку утверждение на странице http://htmlbook.ru/html/a.html

При необходимости, это условие может быть изменено параметром target тега <А>. В XHTML применение этого параметра запрещено.

Сейчас просто поставил :

<head>
<base target="_blank" />
</head>
<body>

и прошел валидность по XHTML 1.0 Transitional здесь http://validator.w3.org/check и здесь http://www.validome.org/validate

Поставить заставили именно в

Вопрос мой был в том, если применение параметра target запрещено, то должен быть взамен разреш?н какой-то другой "законный" способ.

Link to comment
Share on other sites

  • 0
Вопрос мой был в том, если применение параметра target запрещено, то должен быть взамен разреш?н какой-то другой "законный" способ.

Законного способа нет, поскольку это противоречит самому xhtml.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy