15.10.2010, 22:29
|
|
Профессор
|
|
Регистрация: 19.05.2010
Сообщений: 187
|
|
небольшой скриптик к вам на экран))
от вечерком этим написал скрипт, в ифрейм закину вам, посмотрите пожалуйста)) он вообще будет вставляться в игру, ну для счёта, как в игровых автоматах, только реалистичности не хватает, кажется проблема в том что числа спадают и поднимаются по функции у=х, пробывал ставить чёта другое, код вообще не работал, хоть округление было(или скорость поменять...?)..
но ни про это, вообще мне надо что бы если кто может мне помог уменьшить количество кода, и стоит ради уменьшения кода делать и добавлять объекты через DOM?
просто мне надо так сказать минимизировать код или сделать оптимизацию, короче я не знаю как это называется правильно, из-за этого не буду разбрасываться фразами, или ещё куда страшней заходить в гугл)) ну смысл в том, кода меньше, а работоспособность не потеряна))
ну а исходники посмотрите уже не ленясь хоть через ctrl+u)) зайдя по src ниже))
<iframe src ='http://slawaq.hmsite.net/guestbook/test.htm'></iframe>
Последний раз редактировалось Slawaq, 15.10.2010 в 22:35.
|
|
15.10.2010, 23:12
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
поставил 0, начало бесконечно моргать, поставил -200, глюкать стало интересней. тестировать не пробовали? зачем отнимаете чужое время.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
16.10.2010, 05:59
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Стало чета интересно, накодил вот че:
<!DOCTYPE html>
<html>
<head>
<title>Цифровой дисплей</title>
<style type="text/css">
.digits li{
display: inline-block;
position: relative;
width: 62px;
height: 92px;
background: #000;
}
.digits li span{
position: absolute;
display: block;
background: #f00;
border: 1px solid #900;
opacity: 0.3;
-moz-border-radius: 2px;
}
/* horisontal segments */
.digits li .segment-1,
.digits li .segment-4,
.digits li .segment-7{
height: 2px;
width: 44px;
left: 8px;
}
.digits li .segment-1{
top: 4px;
}
.digits li .segment-4{
top: 84px;
}
.digits li .segment-7{
top: 44px;
}
/* vertical segments */
.digits li .segment-2,
.digits li .segment-3,
.digits li .segment-5,
.digits li .segment-6{
height: 30px;
width: 2px;
}
.digits li .segment-2{
top: 10px;
left: 54px;
}
.digits li .segment-3{
top: 50px;
left: 54px;
}
.digits li .segment-5{
left: 4px;
top: 50px;
}
.digits li .segment-6{
top: 10px;
left: 4px;
}
.d0 .segment-1,
.d0 .segment-2,
.d0 .segment-3,
.d0 .segment-4,
.d0 .segment-5,
.d0 .segment-6{
opacity: 1;
}
.d1 .segment-2,
.d1 .segment-3{
opacity: 1;
}
.d2 .segment-1,
.d2 .segment-2,
.d2 .segment-4,
.d2 .segment-5,
.d2 .segment-7{
opacity: 1;
}
.d3 .segment-1,
.d3 .segment-2,
.d3 .segment-3,
.d3 .segment-4,
.d3 .segment-7{
opacity: 1;
}
.d4 .segment-2,
.d4 .segment-3,
.d4 .segment-6,
.d4 .segment-7{
opacity: 1;
}
.d5 .segment-1,
.d5 .segment-3,
.d5 .segment-4,
.d5 .segment-6,
.d5 .segment-7{
opacity: 1;
}
.d6 .segment-1,
.d6 .segment-3,
.d6 .segment-4,
.d6 .segment-5,
.d6 .segment-6,
.d6 .segment-7{
opacity: 1;
}
.d7 .segment-1,
.d7 .segment-2,
.d7 .segment-3{
opacity: 1;
}
.d8 .segment-1,
.d8 .segment-2,
.d8 .segment-3,
.d8 .segment-4,
.d8 .segment-5,
.d8 .segment-6,
.d8 .segment-7,
.d8 .segment-8{
opacity: 1;
}
.d9 .segment-1,
.d9 .segment-2,
.d9 .segment-3,
.d9 .segment-4,
.d9 .segment-6,
.d9 .segment-7{
opacity: 1;
}
</style>
</head>
<body>
<ul id="display" class="digits">
<li>
<span class="segment-1"></span>
<span class="segment-2"></span>
<span class="segment-3"></span>
<span class="segment-4"></span>
<span class="segment-5"></span>
<span class="segment-6"></span>
<span class="segment-7"></span>
<span class="segment-8"></span>
</li>
<li>
<span class="segment-1"></span>
<span class="segment-2"></span>
<span class="segment-3"></span>
<span class="segment-4"></span>
<span class="segment-5"></span>
<span class="segment-6"></span>
<span class="segment-7"></span>
<span class="segment-8"></span>
</li>
<li>
<span class="segment-1"></span>
<span class="segment-2"></span>
<span class="segment-3"></span>
<span class="segment-4"></span>
<span class="segment-5"></span>
<span class="segment-6"></span>
<span class="segment-7"></span>
<span class="segment-8"></span>
</li>
</ul>
<button onclick="counter.countTo(this.nextSibling.value)">Считать до:</button><input type="text" />
<script type="text/javascript">
// конструктор дисплея
function Display(id)
{
// dom-элементы представляющие собой цифры
this.digits = document.getElementById(id).getElementsByTagName('li');
// разрядность нашего дисплея
this.width = this.digits.length;
// метод для отображения дисплеем нужного числа
this.set = function(number){
number = number.toFixed();
for (var i=number.length; i <this.width; i++){
number = '0' + number;
}
var i = this.width;
while (i--)
{
this.digits[i].className = 'd' + number[i];
}
}
}
// конструктор счетчика
function Counter()
{
this.value = 0;
this.step = 1;
this.interval = 100;
this.countTo = function(to){
clearInterval(this.intHandler);
if (this.value == to) return true;
var self = this;
var multiplier = (to - this.value < 0) ? -1 : 1;
this.intHandler = setInterval(function(){
self.stepBy(multiplier*self.step);
if (to == self.value) clearInterval(self.intHandler);
}, this.interval);
}
this.stepBy = function(by){
this.value += by;
if (this.onStep) {
this.onStep.call(this, this.value);
}
}
}
var display = new Display('display');
display.set(0);
var counter = new Counter;
counter.onStep = function () {
display.set(this.value);
}
</script>
</body>
</html>
|
|
16.10.2010, 09:01
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Slawaq,
поставил -00 скрипт похоже со мной разговаривать начал, думаю просит его отдебажить
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
16.10.2010, 15:31
|
Особый гость
|
|
Регистрация: 02.04.2010
Сообщений: 4,260
|
|
Сообщение от danik.js
|
Стало чета интересно, накодил вот че:
|
А зачем столько лишнего css/html кода?
ul, li span в вашем случае все эти элементы можно создать 10-й строчками кода, а то и меньше
Последний раз редактировалось monolithed, 16.10.2010 в 15:35.
|
|
16.10.2010, 17:36
|
|
Профессор
|
|
Регистрация: 19.05.2010
Сообщений: 187
|
|
я только посмотрел коменты, и хочу сказать что это просто будет счётчик, который вводит не человек, а АЯКС!!(а ПХП который я напишу не допустит минусов на счету игроков, я надеюсь))) и сам смысл в том что эта вся байда идёть на клиентсайд, и я хотел найти помощи в уменьшении передаваемых кБ, просто это всего лишь один элемент с ещё таких, наверное нескольких, что будут лететь на клиентсайд. И да как на счёт реалистичности??))
|
|
16.10.2010, 22:01
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Сообщение от monolithed
|
А зачем столько лишнего css/html кода?
ul, li span в вашем случае все эти элементы можно создать 10-й строчками кода, а то и меньше
|
Да, не спорю, li span можно и нужно сгенерировать. А сами цыфры на css реализовал, чтоб не усложнять js, и "отделить представление от контроллера" Можно тупо задать картинки каждому классу - будет очень коротко. Или обходить сегменты на js и скрывать/показывать их.
Насчет нелинейности. Думаю Это делается постоянной установкой разных таймаутов для функции. Величина таймаута зависит нелинейно от какойнибудь величины, меняющейся в пределах от 0 .. 1.
Чесно говоря могу только предположить. Тоже интересен вопрос. можно глянуть на всякие animation в jquery/mootoos
За партянку извиняюсь - вродебы вписывал код в [ spoiler ]
|
|
16.10.2010, 22:21
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от Slawaq
|
я только посмотрел коменты, и хочу сказать что это просто будет счётчик, который вводит не человек, а АЯКС!!(а ПХП который я напишу не допустит минусов на счету игроков, я надеюсь))) и сам смысл в том что эта вся байда идёть на клиентсайд, и я хотел найти помощи в уменьшении передаваемых кБ, просто это всего лишь один элемент с ещё таких, наверное нескольких, что будут лететь на клиентсайд. И да как на счёт реалистичности??))
|
т.к. эта тема дибильная по определению, то начнут с описания своей работы, пару летней давности. Писал я как-то сервис, не то чтобы большой, чел на 100тыс., больше со страны не предполагалось. Ну там файловую систему предусмотрел, аватары, каждому по папке, на сервера все побил, субдомены, защита от DoS, система ошибок, проверка запросов, сессии, хешкоды, мыло каждому, личка ну и т.д. В общем обычный такой сервис.
Так вот, к чему я это. Ни разу мне в голову не пришло что это будет смотреть только комп. В голову лезли атаки хакеров с зараженных спам машин, происки конкурентов ворующих пароли и инопланетяне.
Теперь я сплю спокойно и знаю, что заказчик не подкрадется ко мне сзади и не потребует чего-нибудь, взамен хреново отдебаженого/написанного кода, как у Вас. Я показал вам три ошибки, не хотите исправлять, зачем показывали скрипт, покрасоваться?
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
16.10.2010, 23:52
|
|
Профессор
|
|
Регистрация: 19.05.2010
Сообщений: 187
|
|
блин, Gozar, я не проф который с нуля сможет сделать свой сервис с нормальной защитой, и хорошей работоспособностью, но это для ВК, а ВК мне сам всё это пришлёт, а мне надо лишь, так сказать, более-менее обрабатывать всё это, ну и делать некоторые операции с счетами, от к операциям, как их более правильней и защищённей делать я буду уже с другой точки зрения смотреть, со всеми наворотами про атаки хакеров)) а это лишь интерфейс, который, так сказать, не будет иметь влияния на роботу системы, он будет, показателем)))
но за терпение перед моей по определению тупой темы, я всё же поставлю плюс за выдержку))
p.s.: нет не смогу поставить плюс, нельзя, слишком много уже раньше отплюсовал)
|
|
17.10.2010, 01:29
|
|
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
Сообщение от Slawaq
|
но это для ВК, а ВК мне сам всё это пришлёт
|
аха.
а проверку на тот случай если ВК изменит формат своего вывода, или еще что-то.
если такое произойдет, то пользователь будет получать непонятное поведение скрипта вместо понятного "скрипт временно не работает по причине изменения API вконтакте"
и кстати подделать хакеру ответ вконтактак для вашегно сркипта гораздо проще чем вам кажется.
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
GRID во весь экран |
burashka |
ExtJS |
6 |
09.09.2010 13:05 |
|
|
|