Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Конфликт двух event (https://javascript.ru/forum/misc/12846-konflikt-dvukh-event.html)

Yatop 05.11.2010 11:26

Конфликт двух event
 
Дорогие профессионалы, доброго дня!

Обращаюсь к Вам опять за помощью:

На моем сайте, который я сама и делаю, меню и облако тегов, оба на js.
Меню работало отлично (на onmouseover) пока я не добавила облако :)
В облаке не работает hicolor, а меню тормозит.

Я понимаю, что там конфликт двух событий, но не понимаю, что нужно сделать, как их объединить, чтобы оба работали, т.к. ровным счетом очень мало понимаю в js.

Вот облако:
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
	function  myTags(mytags){
		mytags=mytags.replace(/<A/g, '<a')
			.replace(/\/A>/g, "/a>")
			.replace(/(target=_)(\w*)/g, 'target="_$2"')
			.replace(/(class=)(?!")(\w*)/g, 'class="$2"')
			.replace(/(name=)(?!")(\w*)/g, 'name="$2"')
			.replace(/(id=)(?!")(\w*)/g, 'id="$2"');
		mytags=encodeURIComponent(mytags).replace(/!/g, '%21')
			.replace(/'/g, '%27').replace(/\(/g, '%28')
			.replace(/\)/g, '%29').replace(/\*/g, '%2A');
		var rnumber = Math.floor(Math.random()*9999999);
		var flashvars = {
			tcolor:"0x999999",
			tcolor2:"0xCCCCCC",
			hicolor:"0xFF9900",
			tspeed:"110",
			distr:"true",
			mode:"tags",
			tagcloud:mytags
		};
		var params = {
			allowScriptAccess:"always",
			wmode:'transparent'
		};
		var attributes = {
			id:"flash_cloud"
		};
		swfobject.embedSWF("tagcloud.swf?r="+rnumber,
						   "tags", "618", "228", "9.0.0",
						   "expressInstall.swf", flashvars,
						   params, attributes);
	}

	window.onload=function(){ 
		var mytags="<tags>"
		+document.getElementById('tags').innerHTML
		+"</tags>";
		myTags(mytags);
	};
</script>



а вот меню:
<script type="text/javascript">

function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

var preloadFlag = true;
function preloadImages() {
	if (document.images) {
                knowledges1_over = newImage("images/knowledges1-over.gif");
		trainings1_over = newImage("images/trainings1-over.gif");
		consultations1_over = newImage("images/consultations1-over.gif");
		items1_over = newImage("images/items1-over.gif");
		about1_over = newImage("images/about1-over.gif");
		contacts1_over = newImage("images/contacts1-over.gif");
		preloadFlag = true;
	}
}
</script>


В теле:
<a href="#" onmouseover="window.status='trainings1'; changeImages('trainings1', 'images/trainings1-over.gif'); return true;"
                onmouseout="window.status=''; changeImages('trainings1', 'images/trainings1.gif'); return true;"
                onmousedown="changeImages('trainings1', 'images/trainings1-over.gif'); return true;"
                onmouseup="changeImages('trainings1', 'images/trainings1-over.gif'); return true;">
         <img class="menu" name="trainings1" src="images/trainings1.gif" alt="Тренинги" border="0" height="38" width="213"></a></td>
  </tr>

И так 6 раз = 6 пунктов меню :)))


Спасибо!
И хорошего дня!

Yatop 08.11.2010 15:45

Неужели никто не поможет? :(

ksa 08.11.2010 16:57

Цитата:

Сообщение от Yatop
Неужели никто не поможет?

Таки давай полный тестовый пример...

Yatop 08.11.2010 17:01

Я дам, если скажете что именно :)
Полностью html выложить, css и файлы
swfobject.js и tagcloud.swf ?
Или какие-то части всего этого? :)

Я ж говорю, первый раз сайт делаю сама для себя :)

Только-только в первом приближении разобралась с html и css, а вот с java пока труба :)

ksa 08.11.2010 20:49

Цитата:

Сообщение от Yatop
что именно

Нужно сделать маленький но полноценный тестовый пример иллюстрирующий твою проблему. На нём тебе смогут что-то подправить/посоветовать...

ksa 08.11.2010 20:50

Цитата:

Сообщение от Yatop
Только-только в первом приближении разобралась с html и css, а вот с java пока труба

Таки может не стоит тогда мудрить? :)

Yatop 08.11.2010 21:31

:) стоит. Знаете какой сайт красивый получается? :)

Yatop 08.11.2010 21:47

Цитата:

Сообщение от ksa (Сообщение 78098)
Нужно сделать маленький но полноценный тестовый пример иллюстрирующий твою проблему. На нём тебе смогут что-то подправить/посоветовать...

ага, сейчас сделаю. Спасибо.

ksa 08.11.2010 22:04

Цитата:

Сообщение от Yatop
Знаете какой сайт красивый получается?

Красота она у каждого своя... :lol:

Yatop 08.11.2010 22:05

Цитата:

Сообщение от ksa (Сообщение 78115)
Красота она у каждого своя... :lol:

это точно :)

Ну, потом могу ссылку кинуть Вам, как принимавшему(ей) участие в "строительстве" :)

Yatop 08.11.2010 22:33

Вложений: 1
Вот, вроде то, что надо :)
Там кусок сайта в zip

ksa 08.11.2010 22:40

Yatop, и чего там не так?

Yatop 08.11.2010 22:41

Меню притормаживает - после добавления 2-го скрипта.
И в облаке тегов при наведении мыши цвет не меняется (hicolor) не срабатывает.

ksa 09.11.2010 08:50

Yatop, смотрел в ИЕ7 - так там после разрешения использования скрипта твоё "облако" вообще исчезает...

У тебя там текста просто до неприличного много... :) Это свое решение и стыбжено откуда-то?
Поскольку для решения именно твоего внешнего вида столько писанины точно не нужно...

Yatop 09.11.2010 10:10

Да? А я в IE смотрела -всё нормально было.
С любовью сперто :)
Вот отсюда: http://alex.ermilov.net/coding/javas...ml-javascript/

Я насколько поняла, там как раз так много текста, чтобы в IE в том числе работало.

ksa 09.11.2010 10:17

Цитата:

Сообщение от Yatop
С любовью сперто

Тогда выкинь все это с лёгким серцем и сделай все сама... ;)

Yatop 09.11.2010 10:25

:)
Других вариантов нет? ;)
Я так понимаю, что скрипт рабочий полностью, но он конфликтует с onmouse? т.к. они несут общие функции ... или я не права?

ksa 09.11.2010 21:54

Цитата:

Сообщение от Yatop
Других вариантов нет?

А смысл колупаться вчужом не работающем коде? Я-то полагал что это твоё личное творение...

Для простой менюшки там слишком многабукаф... :) Зачем плодить такие тексты?

Yatop 09.11.2010 21:57

Меню я сама делала :)
А вот облако с любовью ... :)

Жаль, что Вы мне не поможете, сама я не справлюсь, видимо

ksa 09.11.2010 22:40

Цитата:

Сообщение от Yatop
сама я не справлюсь

Таки ты еще и не пробовала... :)
Картинка есть того что нужно сделать?

Yatop 09.11.2010 22:44

И таки я пробовала :) Сайт-то почти доделан :), моими усилиями. И дизайн, и нарезка и css с html :) А вот java пока слабо :) Только с меню разобралась в первом приближении.

Какая картинка нужна?

Нужно, чтобы получилось все тоже самое, что в тесте. Это часть почти уже законченного сайта. С моими картинками для меню и т.д.

Нужно, чтобы было все тоже самое, но меню быстро переключалось, а в облаке тегов цвет менялся на оранжевый (в тесте стоит нужный цвет hicolor, но не срабатывает ) :)

ksa 09.11.2010 22:51

Цитата:

Сообщение от Yatop
А вот java

Это не Ява...

ksa 09.11.2010 22:54

Цитата:

Сообщение от Yatop
Какая картинка нужна?

Дизайнерская...
Цитата:

Сообщение от Yatop
Нужно, чтобы получилось все тоже самое, что в тесте.

Ясно... Могу показать только без картинок. Картинки сама сможешь подставить куда нужно...

ksa 09.11.2010 23:28

Как вариант... Букв намного меньше. ;)

<!DOCTYPE html>
<html>
<head>
<title>test</title>
<style type='text/css'>
* {
	margin: 0;
	padding: 0;
}
html,
body {
	width: 100%;
	height: 100%;
	color: #000000;
}
#container {
	width: 500px;
	margin-left: auto;
	margin-right: auto;
}
#menu {
	float: left;
	width: 100px;
}
#menu a {
	display: block;
	height: 30px;
	text-align: center;
	border: 1px solid;
}
#menu a:hover {
	color: #ffffff;
	background-color: blue;
}
#menu a span {
	position: relative;
	top: 5px;
}
#right {
	margin-left: 120px;
	border: 1px solid;
}
#right a {
	text-decoration: none;
}
#right a:hover {
	color: red;
}
.end {
	clear: both;
}
</style>
</head>
<body>
<div id='container'>
	<div id='menu'>
		<a href='#'><span>menu1</span></a>
		<a href='#'><span>menu2</span></a>
		<a href='#'><span>menu3</span></a>
		<a href='#'><span>menu4</span></a>
	</div>
	<div id='right'>
		<a href='#'>text 1</a>
		<a href='#'>text 2</a>
		<a href='#'>text 3</a>
		<a href='#'>text 4</a>
		<div class='end'></div>
	</div>
</div>
</body>
</html>

Yatop 10.11.2010 09:33

Спасибо!

Но это совсем не то, что нужно :)
Про меню на hover я думала, а вот облако хочу объемное, как в примере.

Еще раз спасибо. Хорошего дня!

ksa 10.11.2010 09:58

Цитата:

Сообщение от Yatop
Но это совсем не то, что нужно

Это только на первый взгляд...
Цитата:

Сообщение от Yatop
облако хочу объемное

Таки мой пример легко под это подделывается... Нужно только приложить желание.

Yatop 10.11.2010 10:02

всё чудесатее и чудесатее, как говорила Алиса :)

Ну, значит я совсем лох ... я не представляю, как можно сделать объемное, крутящееся облако (как в примере) средствами css и html :) При том, что я много уже почитала в инете по этому вопросу.

ksa 10.11.2010 19:48

Есть многое на свете, друг Горацио,
что и не снилось вашим мудрецам. (с)
:lol:

Вот посмотри примеры на ЦСС3...

Yatop 10.11.2010 22:56

:) это точно.
Да я и так знаю, что мне не быть спецом в языках программирования и в изготовлении сайтов.
Да и не стремлюсь к этому :). У меня своя специальность есть.
Если бы были деньги, давно бы заказала у профи сайт и не маялась сама.
Что я собственно и сделаю, при первой возможности.

А пока ладно, сама буду думать, что и как делать. А то получается, что трачу ваше и своё время, а толку ноль для меня.

Спасибо!

vladlen 10.11.2010 23:30

Yatop, читаю тему, не могу оторваться :) Еще на первом посте хотел вам ответить, но промолчал.
Вы поймите, не туда стремления идут! Главное в сайте что? Функциональность, в вы откровенно делаете из функционального сайта каку. Вы помайтесь и потратьте наше время, но ksa вам истину глаголит. Не надо тырить всякую муть и пихать себе на сайт. Вы же не ходите по помойкам и не несете к себе домой весь хлам.
Специализация нам ваша не нужна, я тоже хрен знает чем занимаюсь. Вы свой уровень поднимаете, а тем более если скажете: вот я могу такое, - многие охринеют.
Если не будете тратить время, то из сайта получите вращающеюся помойку которая заинтересует только идиотов, правда их много в нашей стране :)
Слушайте что вам говорят и делайте как вам хочется и будет счастье вам :)


Часовой пояс GMT +3, время: 09:26.