Sidebar

stels's home page

  • Раздел «On-Line» — часть данного форума, поэтому следует руководствоваться в первую очередь [URL=http://cs-mapping.com.ua/forum/showthread.php?t=17042]Правилами Форума[/URL] при написании сообщений и создании тем. Помимо этого, есть особые пункты настоящего раздела.

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

    1. Корректно называйте тему: указывайте адрес сайта в названии темы, либо пишите чья же это домашняя страница (HP).

    2. Прежде чем создавать тему, воспользуйтесь поиском. Вполне возможно, что интересующий вас сайт уже обсуждался. В таком случае, свои мысли нужно писать именно туда, а не плодить одинаковые темы. Дельные сообщения для поднятия старых тем не запрещены. Бесполезные же запрещены и в новых темах. Убедившись в отсутствии темы, смело создавайте свою.

    3. Запрещается обсуждение взлома паролей почты, форумов, других подобных сервисов.

    4.2 В настоящем разделе действует особое правило «4.2». Запрещены сообщения, содержащие вызывающе неверную либо вызывающе неверно интерпретированную информацию, способную привести к развитию нездоровой дискуссии. Мы уважаем чужое мнение, но оставляем за собой право удалять сообщения, безаппеляционно сообщающие вызывающе неверные факты.

forester

F
и как тебе помогать разобраться? ты если знаешь css - понял бы... а нет - учи :)
 
Jul 25, 2006
3,752
1
0
Maxwel:

А ты можешь помочь с "мощной" всплывающей подсказкой?

Вот пример из учебника Владимира Дригалкина LENIN INC:

Code:
<script language="JavaScript">
if (parseInt(navigator.appVersion)>= 4)
{
if (navigator.appName == "Netscape")
{
layerStyleRef="layer.";
layerRef="document.layers";
styleSwitch="";
}
else
{
layerStyleRef="layer.style.";
layerRef="document.all";
styleSwitch=".style";
}
}
function show(layerName)
{
if (parseInt(navigator.appVersion)>= 4)
{
eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="visible"');
}
}
function cls(layerName){
if (parseInt(navigator.appVersion)>= 4) 
{
eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');
}
}
</script>
Code:
<style type="text/css">
#text1 {HEIGHT: 80px; LEFT: 0px; POSITION: absolute; TOP: 50px; VISIBILITY: hidden; WIDTH: 250px; Z-INDEX: 10}
</style>
Code:
<!--Элемент style таблицы содержит координаты появления подсказки, а также ее размеры-->
<table align="left" id="text1" border="1" width="100%" cellspacing="0" cellpadding="5" style="HEIGHT: 80px; LEFT: 50px; TOP: 90px; WIDTH: 300px">
<tr>
<td bgcolor="#FFFFE1">
Здесь Вы можете поместить текст, изображения, используя при этом тэги. 
</td>
</tr>
</table>
Code:
<a href="http://lenininc.narod.ru/" onmouseout="cls('text1');" onmouseover="show('text1');">Посетить сайт...</a>



Я хочу сделать так:

Видешь картинку карты dm_arabianfort в разделе maps for games. Я хочу чтобы когда наводишь (помимо чтобы картинка заменялаь на другую и онажа являлась прямой ссылкой на скачку...это уже реализовано) появлялась подсказка в дизайн стиле сайта с описанием карты и нескольками маленькими скринами.
 
Last edited:

Maxwel

Software Engineer
Dec 7, 2006
1,439
34
2
0
Syberia
2 STELS:
Сорри я сейчас не могу помочь, потому что не за своим компом :( надо подождать выходных, чтоб я смог получить доступ к моему компу... Подробнее в аське :)
 

JOK

New member
Jul 13, 2005
351
33
Ксс подучил) вот трабла возникла)
у меня есть 4 кссника . каждый под разрешение. Но поч не грузит( все 4 кссника в style.css

вот код
<script language=JavaScript>
alert("Размер экрана составляет:"+screen.width+"х"+screen.height+"px");
if (screen.width == '640') {document.write ('<LINK href="1.css" rel="stylesheet" type="text/css">'); alert("640")}
else {if (screen.width == '800') {document.write ('<LINK href="2.css" rel="stylesheet" type="text/css">'); alert("800")}
else {if (screen.width == '1024') {document.write ('<LINK href="3.css" rel="stylesheet" type="text/css">'); alert("1024")}
else {if (screen.width == '1280') {document.write ('<LINK href="3.css" rel="stylesheet" type="text/css">'); alert("1280")}
else {document.write ('<LINK href="N.css" rel="stylesheet" type="text/css">'); alert("xxx")}
}
}
}
</script>


Почему не заменяет ксс если разрешение меняется ?
 
Last edited:

DustmaN

Я
Jul 6, 2004
6,525
1
0
разрешение

[ADDED=DustmaN]1203027671[/ADDED]
я каг бы не вебмастер ни с какой стороны но мне как-то кажется что никакой подстановки и не может происходить ибо это js и выполняется он на клиенте, поэтому тема с "сработал скрипт -> подставил что-то в код -> браузер отпарсил обновлённый код" так просто не прокатит

я бы с помощью пхп такую вещь мутил, или не убивал себе моск разными стилями под разные разрешения
 
Last edited:

DustmaN

Я
Jul 6, 2004
6,525
1
0
afaik php не может напрямую получить разрешение экрана юзера (что логично), так что как вариант можно получить разрешение через js и передать его в php-скрипт который уже дальше разрулит. Но по-моему делать что-то отдельно под разные разрешения это вообще дурная затея.
 

JOK

New member
Jul 13, 2005
351
33
не ну просто 800 600 буквы на разрешении 1280 1024 буду казаться муравьями или наоборот.
 

Дикс

Циник
Jul 21, 2005
1,791
6
0
не ну просто 800 600 буквы на разрешении 1280 1024 буду казаться муравьями или наоборот.
буквы должны быть одного фиксированного шрифта, так чтобы на больших разрешениях их можно было комфортно читать. если при разрешении 800х600 они смотрятся сильно крупно - можно проверить разрешение юзера яваскриптом, поставить ему куки и при перезагрузке страницы прочесть куки в пхп, дабы оптимизировать шрифт.
проблема в том, что у юзера может быть запрет на установку кукис, либо отключен яваскрипт. В таком случае логичнее всего сделать версию сайта, оптимизированную для малых разрешений и повесить вверху ссылку на неё.
Чтобы полностью не копировать сайт, можно создать переменную в сессии, путём перехода на определенный скрипт. Далее во время работы с сессией страница будет каждый раз оптимизироваться под разрешение.
 

JOK

New member
Jul 13, 2005
351
33
А нельзя проще ?
Условие если расширение 1280 1024 то используется 1.ксс
Условие если расширение 1024 768 то используется 2.ксс
Условие если расширение 800 600 то используется 3.ксс

\\\

else {if (screen.width == '800') {document.write ('<LINK href="1.css" rel="stylesheet" type="text/css">'); alert("800")}
else {if (screen.width == '1024') {document.write ('<LINK href="2.css" rel="stylesheet" type="text/css">'); alert("1024")}
else {if (screen.width == '1280') {document.write ('<LINK href="3.css" rel="stylesheet" type="text/css">'); alert("1280")}

\\\
Тип ни чего не меняется а просто до загрузки страницы по мере выполнения условия выбирается нужный ксс
 

DustmaN

Я
Jul 6, 2004
6,525
1
0
яваскрипт выполняется на стороне клиента т.е. ПОСЛЕ загрузки страницы с сервера. Поэтому тебе и предлагается использовать его в связке с пхп
 

JOK

New member
Jul 13, 2005
351
33
Эх) всё так сложно) Можешь дать пример или ссылку на ресурс где и как это делать, буду признателен
 

Maxwel

Software Engineer
Dec 7, 2006
1,439
34
2
0
Syberia
2 STELS:
итак, я не могу понять что с подсказкой не так... я её интегрировал в пусую страницу и она работает... что конкретно с ней непонятно?

Я всё-таки повозился с ней и добавил фичу для того, что бы можно было подстроить координаты появления подсказки непосредсвенно при её появлении (show). В описании каждой подсказки надо обратить внимание на поле id ведь именно его значение нужно указать при показывании/прятании подсказки.

Я приаттачил пример - страницу с интегрированной посказкой. Подсказка имеет id = text1 и появляеться в координатах (0,250) (для страницы!). Как получить координаты автоматически - я хз %) Их указать прийдётся вручную. Я там всё нужное прокоментировал, думаю разберёшся.... Ну а если нет, то тогда спрашивай через личку или аську (на выходных)... =)
 

Attachments

Дикс

Циник
Jul 21, 2005
1,791
6
0
2 Maxwel, STELS:

1. все теги должны быть в нижнем регистре - xhtml несомненно заменит html, а он этого требует.
2. убрать все проверки на Нетскейп - он больше официально не поддерживается и его практически никто не использует.
3. убрать проверку на версию браузера, ибо она актуальна лишь для нетскейпа.
4. добавить doctype первой строкой html
5. доступ к элементу необходимо осуществлять средствами DOM: document.getElementById('myId').style.foo = 'bar';
6. language="JavaScript" - deprecated. надо писать type="text/javascript"
7. таблицу с подсказкой лучше заменить на div, размеры задать в процентах, visibility заменить на display
8. координаты лучше получать яваскриптом динамически
9. ну и хз чего ещё по мелочам поправил, отступы например - margin для картинки. их надо убрать, когда вставите картинку в контент.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<head>
<title>tooltip test</title>
<script type="text/javascript">
function show(layerName,x,y,newText){
document.getElementById(layerName).innerText = newText;
document.getElementById(layerName).style.display = '';
document.getElementById(layerName).style.left = event.clientX+document.body.scrollLeft;
document.getElementById(layerName).style.top = event.clientY+document.body.scrollTop;
}

function cls(layerName){
document.getElementById(layerName).style.display = 'none';
}
</script>
</head>

<body>
<div id="text1" style="background-color: #FFFFE1; position:absolute; display: none; padding: 5px; border: 1px solid black; "></div>
<img src="image.jpg" onmouseout="cls('text1');" onmouseover="show('text1',event.clientX, event.clientY, 'подсказко :)');" style="border: 1px solid black; margin-top: 500px; margin-bottom: 500px" />
</body>
</html>

Да, ещё добавил возможность ввода кастомного текста подсказки.
 
Last edited:

Game Server

CSM TV

Page QR Code

QR Code

Donate Campaign

Total amount
$0.00
Goal
$25.00

Latest profile posts

TestUser wrote on TRUP@C's profile.
Master?
TestUser wrote on TRUP@C's profile.
Hello Father

Members online

No members online now.

Discord