Показать сообщение отдельно
  #1 (permalink)  
Старый 20.03.2013, 11:35
Новичок на форуме
Отправить личное сообщение для evgenij-1963 Посмотреть профиль Найти все сообщения от evgenij-1963
 
Регистрация: 20.03.2013
Сообщений: 3

Почему скрипт работает только в Опере?
Есть скрипт, выводящий картинки наград на форуме (в профилях пользователей), результат работы которого виден только в Опере. В Хроме, Мозилле и IE ничего не видно. Как исправить код, чтобы все отображалось?
Вот этот код:
var awardsProfile = {
	uid: false,
	
	init: function () {
		if (navigator.userAgent.indexOf('MSIE') == -1) {
			document.addEventListener('DOMContentLoaded', function () {awardsProfile.start();}, false);
		}
		else {
			this.start();
		}
	},
	
	start: function () {
		JsHttpRequest.query('jsloader.php?loader=awards', {action: 'medals', users: [this.uid], profile: 'yes'},
			function (data, text) {awardsProfile.printMedals(data, text);}, false);
	},
	
	printMedals: function (data, text) {
		var div = document.getElementById('awards');
		var a, img;
		
		for (id in data.medals[this.uid]) {
			if (id = id.match(/\d+/)) {
				id = id[0];
				
				a = document.createElement('a');
				a.href = 'tools.php?action=awards&do=award&id=' + id;
				a.target = '_blank';
				a.title = data.info[id][0];
				
				img = document.createElement('img');
				img.src = data.info[id][1];
				a.appendChild(img);
			}
			else {
				a = document.createElement('a');
				a.href = 'tools.php?action=awards&do=show&member=' + this.uid;
				a.target = '_blank';
				a.innerHTML = data.medals[this.uid].a;
			}
			
			div.appendChild(a);
		}
	}
};

awardsProfile.init();
Ответить с цитированием