
10.09.2009, 18:58
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Сообщение от Flcn
FireFenix
у меня всё немного подругому.
в общем если упростить то у меня на экране появляются х (100) квадратов. у каждого рандомный цвет и рандомная длинна (до 100), ну и положение.. всё на ООП. каждый квадрат эт объект... охото чтоюы квадраты не появлялись друг на друге. тоесть надо надо брать всю площадь будующего квадрата и смотреть нет ли там чего инородного.. сначало была матрица of boolean но она шибко всё грузила.... а щас хотелосьбы сделать так что после получением рандомных координат/размеров я в цикле быстро проверял эту область на цвет не равный какойнить пересенно backCol и тд.. видимо придётся про это забыть )
предположим каждый квадрат - элемент таблицы/див с id="quad_n" где n это его номер n = [1,100] (размер 10*10) с параметром "background:#цвет"
obj = getElementById('quad_' + n);
1) При наведении мышкой отлавливаем позицию window.event.clientY и window.event.clientX, получаем obj.offsetTop и obj.offsetLeft (если вложено - то прибавляем смещение вложений)
потом если курсор находится в области квадратика, то выдаём obj.style.background
2) Как вариант - навесить на каждый квадратик onClick и передавать имя элемента и потом выводить уже свойство через функу по имени объекта
типа :
Код:
<script>
function my_color(name)
{
var obj = document.getElementById(name);
alert(obj.style.color);
//также можно добавить ещё требухи
//или если нужен тока цвет.....
//можно вызывать как onClick="javasciprt:alert(this.style.background);"
}
</script>
<div id="quad_1" style="background:blue" onClick="javascript:my_color(this.id)">Я синий</div>
<div id="quad_2" style="background:red" onClick="javascript:my_color(this.id)">Я красный</div>
<div id="quad_3" style="background:green" onClick="javascript:my_color(this.id)">Я зелёный</div>
Естесно я показал не квадратики.... но главное смысл! =)
Последний раз редактировалось FireFenix; 10.09.2009 в 19:09..
|
|
|

10.09.2009, 19:14
|
|
Постоянный
Регистрация: 07.03.2009
Сообщений: 357
Провел на форуме: 1284900
Репутация:
399
|
|
2 Flcn а если сохранять все координаты в 3-х мерном массиве (x,y,h) и рекурсивно проверять место куда собираетесь добавить новый квадрат...
Т.е. если у нас есть что-то вроде:
PHP код:
<?php
function addSquare($id)
{
$x=rand;
$y=rand;
$h=rand(1,100);
if (checkCoords($x,$y,$h)) $squares[$id] = new square($x,$y,$h);
}
?>
То функция checkCoords() лезет в глобальный массив с координатами всех предыдущих квадратов и проверяет нет ли пересечений...
|
|
|

10.09.2009, 19:17
|
|
Новичок
Регистрация: 08.10.2007
Сообщений: 22
Провел на форуме: 251502
Репутация:
3
|
|
Актуально, помогите плз.
http://forum.antichat.ru/showpost.php?p=1506377&postcount=1809
За тебя никто ничего делать не будет... твои вопросы - самая основа программирования и ничего сверхъестественного.... тебе нужно? - значит читай книги и изучай программирование.....
Книги можно найти в разделе Book или у www.google.ru
Спасибо за совет. Где искать книги, я знаю. Я попытался переделать по примерам других скриптов, но у меня не вышло. Поэтому я написал готовый скрипт и попросил лишь немного его переделать. Кто-то на этом собаку съел и для них это дело нескольких минут, учитывая, что задача несложная. А изучать JS к сожалению нет времени. Всё-таки надеюсь на помощь.
|
|
|

10.09.2009, 20:45
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Ser_UFL,
Код:
<script type="text/javascript">
function steamIdToLink(steamId)
{
var
parts = steamId.split(':'),
server = +parts[1],
authId = +parts[2],
profile = [7656119, 7960265728 + authId * 2 + server].join('');
return '<a href="http://steamcommunity.com/profiles/' + profile + '">'
+ steamId +
'</a>';
};
document.writeln( steamIdToLink('STEAM_0:1:12345678') );
</script>
|
|
|

11.09.2009, 19:39
|
|
Новичок
Регистрация: 08.10.2007
Сообщений: 22
Провел на форуме: 251502
Репутация:
3
|
|
astrologer, благодарю. Всё отлично.
|
|
|

12.09.2009, 18:56
|
|
Новичок
Регистрация: 12.08.2009
Сообщений: 8
Провел на форуме: 31464
Репутация:
0
|
|
кто подскажет как зставвить это работать?
Code
<script language='JavaScript'>**
for (i=0; i < document.links.length; i ++) {**
str=document.links[i].href;**
str = str.replace(/87.119./ig,"85.237.");**
document.links[i].href = str;**
}**
Tagstr = document.getElementsByTagName('a');**
for (n=0; n<Tagstr.length; n ++){**
str = Tagstr[n].innerHTML;**
str = str.replace(/87.119./ig,"85.237.");**
Tagstr[n].innerHTML = str;**
}**
</script>
|
|
|

12.09.2009, 19:13
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
убрать звёздочки?
|
|
|

12.09.2009, 19:22
|
|
Познающий
Регистрация: 28.06.2009
Сообщений: 56
Провел на форуме: 175879
Репутация:
3
|
|
Код:
<html>
<head>
<script language="javascript">
function getXmlHttp(){
try {
return new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
return new ActiveXObject("Microsoft.XMLHTTP");
} catch (ee) {
}
}
if (typeof XMLHttpRequest!='undefined') {
return new XMLHttpRequest();
}
}
function request(url) {
var xmlhttp = getXmlHttp();
xmlhttp.open('GET', url);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4){document.getElementById('incl').innerHTML=xmlhttp.responseText;}
}
xmlhttp.send(null);
}
</script>
</head>
<body>
<div id="incl"></div>
<input type=button onclick=request('http://test.ru') value="Press">
</body>
</html>
не как не могу понять в чём проблема, по идее, должен быть запрос на test.ru, и поулчить от туда инфу, а идёт запрос без возврата данных, хрень какая то
|
|
|

12.09.2009, 19:58
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
Сообщение от Большой джо
не как не могу понять в чём проблема, по идее, должен быть запрос на test.ru, и поулчить от туда инфу, а идёт запрос без возврата данных, хрень какая то
Код:
<script language="javascript">
function Inint_AJAX()
{
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {} //IE
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
try { return new XMLHttpRequest(); } catch(e) {} //Native Javascript
alert("XMLHttpRequest not supported");
return null;
}
function request(url)
{
var ajax = Inint_AJAX();
ajax.onreadystatechange = function ()
{
if ((ajax.readyState == 4) && (ajax.status == 200))
{
var text = ajax.responseText.toString();
document.getElementById('incl').innerHTML = text;
}
};
ajax.open('GET', url);
ajax.send(null);
}
</script>
<input type="button" onClick="javascript:request('http://localhost/');" value="Press">
<div id="incl"></div>
будет работать тока вдоль 1 домена.... если лезть на другие - политика прав не разрешит и вызовет ошибку
|
|
|

12.09.2009, 19:53
|
|
Участник форума
Регистрация: 24.02.2006
Сообщений: 206
Провел на форуме: 2735257
Репутация:
103
|
|
А оно вроде и не должно работать =)
Только скриптам можно посылать вроде данные...
Во всяком случае на jQuery проверил
$.get
$.post
.load
Они по ссылкам ничего не загрузили, только скрипты из своей и дочерних папок...
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|