Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.09.2012, 10:20
Новичок на форуме
Отправить личное сообщение для Maksimchik Посмотреть профиль Найти все сообщения от Maksimchik
 
Регистрация: 03.07.2012
Сообщений: 4

Облегчите пожалуйста код, как его возможно сделать найболее оптимальным?
Облегчите пожалуйста код, как его возможно сделать найболее оптимальным? Чтобы браузер не начинал тормозить после загрузки записей 1000+

Я думал вообще удалять изображения, но думаю что ничего не изменится.

По коду думаю понятно для какого это сайта. ^_^

И еще важное! Код который содержится в файле script.js подключается в Оперу, на скриншоте показано...

// JavaScript for a Opera
window.onload = function()
{
	if(window.location.host == "vk.com")
	{
		document.getElementsByTagName('title')[0].innerHTML = "(JS)" + document.getElementsByTagName('title')[0].innerHTML;
		document.onkeydown = function()
		{
			event = event || window.event;
			window.key1 = window.key2;
			window.key2 = window.key3;
			window.key3 = event.keyCode;
			
			if(key1 == 17)
			{
				if(key2 == 16)
				{
					if(key3 == 65)
					{
						DivInfo(0);
						
						setTimeout
						(
							function()
							{
								DivInfo("Этап #1<br>Раскрытие...");
								var cHeight, lastCHeight;
								var interval = setInterval
								(
									function()
									{
										cHeight = document.body.clientHeight;
										if(document.getElementById('wall_more_link').currentStyle.display != 'none')
										{
											window.scrollTo(0,cHeight);
											lastCHeight = cHeight;
										}
										else
										{
											clearInterval(interval);
											window.scrollTo(0,cHeight);
											DivInfo("Этап #2<br>Запуск кликера...");
											setTimeout("clickToLikes();",3000);
										}
									}
								,1000);
							}
						,3000);
					}
					else
					{
						key1 = 0;
						key2 = 0;
						key3 = 0;
					}
				}
				else
				{
					key1 = 0;
					key2 = 0;
					key3 = 0;
				}
			}
		}
	}
}

function clickToLikes()
{
	var unsetButtons = document.getElementsByClassName('post_like_link fl_l'), buttons = new Array(), content, endtime, intervalTime = 20000, i = 0, i2 = 0;
	while(i < unsetButtons.length)
	{
		content = document.getElementById("like_icon" + unsetButtons[i].id.substr(9,unsetButtons[i].id.length)).className;
		if((content.indexOf("my_like") + 1) == false)
		{
			buttons[i2] = unsetButtons[i];
			i2++;
		}
		i++;
	}
	
	if(buttons.length >= 1)
	{
		i = 0;		
		endtime = intervalTime * buttons.length;
		buttons[i].click();
		location.href = "#post" + buttons[i].id.substr(9,buttons[i].id.length);
		DivInfo("Этап #4<br>Жмем кнопки...<br>Нажато: " + (i + 1) + "(из " + buttons.length + ")<br>Осталось " + ElapsedTime(endtime - intervalTime * (i + 1)));
		
		if(buttons.length > 1)
		{
			var interval = setInterval
			(
				function()
				{					
					buttons[i].click();
					location.href = "#post" + buttons[i].id.substr(9,buttons[i].id.length);
					DivInfo("Этап #4<br>Жмем кнопки...<br>Нажато: " + (i + 1) + "(из " + buttons.length + ")<br>Осталось " + ElapsedTime(endtime - intervalTime * (i + 1)));
					i++;
					
					if(i == buttons.length)
					{
						clearInterval(interval);
						DivInfo("AutoLikeClicker завершил работу.<br>Нажато " + (i + 1) + " кнопок.</p>");
					}
				}
			,intervalTime);
		}
	}
	else{ setTimeout("DivInfo('AutoLikeClicker завершил работу.<br>Кнопок не найдено.</p>');",3000); }
}

function DivInfo(text)
{
	if(document.getElementById('DivInfo') === null)
	{
		var newDiv = document.createElement('div');
		newDiv.id = 'DivInfo';
		newDiv.style.width = '180px';
		newDiv.style.height = '60px';
		newDiv.style.position = 'fixed';
		newDiv.style.border = '1px solid #AA6666';
		newDiv.style.top = '3px';
		newDiv.style.right = '3px';
		newDiv.style.backgroundColor = '#F6F6F6';
		newDiv.innerHTML = "<p style='margin: 3px; text-align: center;'>Запускается DivInfo...</p>";
		document.getElementsByTagName('body')[0].appendChild(newDiv);
	}
	else if(text != 0)
	{
		document.getElementById('DivInfo').innerHTML = "<p style='margin: 3px; text-align: center;'>" + text + "</p>";
	}
}
Изображения:
Тип файла: jpg Screen1.jpg (51.3 Кб, 4 просмотров)

Последний раз редактировалось Maksimchik, 26.09.2012 в 10:23.
Ответить с цитированием
  #2 (permalink)  
Старый 26.09.2012, 10:32
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

надо скрыть контейнер с мусоркой в виде записей - нафиг их отображать для пользователя, если их обрабатывает скрипт? довольно нехило рендерер кушает ВСЁ - ещё бы, 1000+ экземпляров вкусновёрстки от ВК.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите пожалуйста как сделать задание Альбиночка Общие вопросы Javascript 1 28.11.2011 16:47
Как сделать как в JQ? faforty Общие вопросы Javascript 8 13.11.2011 23:35
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 08.02.2010 23:00
Подскажите пожалуйста, как сделать? BMWSauber Элементы интерфейса 2 27.01.2010 14:50
Как сделать окошко с возможностью изменения его содержимого? nolka Элементы интерфейса 2 10.07.2008 07:22