Показать сообщение отдельно
  #1 (permalink)  
Старый 05.11.2010, 11:26
Интересующийся
Отправить личное сообщение для Yatop Посмотреть профиль Найти все сообщения от Yatop
 
Регистрация: 02.11.2010
Сообщений: 19

Конфликт двух 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, 05.11.2010 в 11:30.
Ответить с цитированием