Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   нужна помощь в JavaScript (https://javascript.ru/forum/misc/2425-nuzhna-pomoshh-v-javascript.html)

михаил 23.12.2008 17:01

нужна помощь в JavaScript
 
Нужно создать страницу с JavaScript, управляющая движением
картинки в сетке 5х5

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
Движение картинки:13,8,7,12,17,18,19,14,9,4,3,2,1,6 ,11,16,21,22,23,24,25
20,15,10,5

Очень нужна помощь!!!

vk65535 23.12.2008 17:56

Как-то так?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<style type="text/css">
div.row { position: relative; zoom: 1; overflow: hidden; }
div.cell { float: left; border: 1px solid #88f; width: 50px; height: 50px; overflow: hidden; }
</style>
</head>
<body>
<script>
(function() {
	var cells = [], route = [13,8,7,12,17,18,19,14,9,4,3,2,1,6,11,16,21,22,23,24,25,20,15,10,5],
		pos = 0;
	var img = document.createElement('IMG');
	img.src = 'http://javascript.ru/forum/cat/list/js.gif';
	img.style.cssText = 'width: 50px; height: 50px; border: 0;';
	(function() {
		for (var j = 0; j < 5; ++j) {
			var r = document.createElement('DIV');
			r.className = 'row';
			document.body.appendChild(r);
			for (var i = 0, e; i < 5; ++i) {
				e = document.createElement('DIV');
				e.className = 'cell';
				r.appendChild(e);
				cells.push(e);
			}
		}
	})();
	var timer = window.setInterval(function() {
		var e;
		if (pos) cells[route[pos - 1] - 1].removeChild(img);
		cells[route[pos++] - 1].appendChild(img);
		if (pos >= route.length) window.clearInterval(timer);
	}, 200);
})();
</script>
</body>
</html>

михаил 23.12.2008 18:35

нужна помощь в JavaScript
 
Спасибо, премного благодарен!!!

Вадим 28.04.2009 00:00

js поп андер
 
мне нужно сделать в js поп андера за место обыкновенной html ссылки на картинку поставить скрипт который булет показывать несколько баннеров в разнобой у меня есть и скрипт поп-андера и скрипт для баннеров чтоб он показывал их в разнабой! но я не могу сделать так чтоб эти два скрипта работали вместе! если кто может помогить пожалуйсто вот сами скрипты:

это поп-андер

var ov = false;
function GetCookieCMSPopVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookieCMSPop (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return GetCookieCMSPopVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
function SetCookiePop (name, value) {
var argv = SetCookiePop.arguments;
var argc = SetCookiePop.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}

function popup_gelCMSPOP()
{
    day = new Date();
    URL = "http://cs-klan-zav.3dn.ru/";
    id = day.getTime();
    eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=600,height=600,left = 276,top = 132');");
    window.focus();
    document.getElementById('popup_divMenuPOPruu').style.display = 'none';
	pathname = "/";
    myDomain = "/";
    var largeExpDate = new Date ();
    largeExpDate.setTime(largeExpDate.getTime() + (24 * 3600 * 1000));
    SetCookiePop('popru','1',largeExpDate, "/");
}

function banner_gel(URL)
{
    day = new Date();
    id = day.getTime();
    eval("page" + id + " = window.open('http://cs-klan-zav.3dn.ru/', '" + id + "', 'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=600,height=600,left = 276,top = 132');");
    window.focus();
    document.getElementById('popup_divMenuPOPruu').style.display = 'none';
	pathname = "/";
    myDomain = "/";
    var largeExpDate = new Date ();
    largeExpDate.setTime(largeExpDate.getTime() + (24 * 3600 * 1000));
    SetCookiePop('popru','1',largeExpDate, "/");
}
popru = GetCookieCMSPop('popru');
if (popru == null){
document.write('<div style="position: absolute; top:25%; left:50%; margin-left:-200px; visibility:hidden; z-index:9996570;" id="popup_divMenuPOPruu"><table border="0" width="468" cellspacing="0" cellpadding="0"><tr><td bgcolor="#0780fe" width="300" style="padding-left: 10px"><b><a target="_blank" style="font-size: 11px; color: #FFFFFF; line-height:20px;  font-family: Arial; text-decoration:none;" href="http://cs-klan-zav.3dn.ru/">cs-klan-zav.3dn.ru</a></td><td bgcolor="#0780fe"><a style="font-size: 11px; color: #FFFFFF; line-height:20px;  font-family: Arial; text-decoration:none;" href="http://cs-klan-zav.3dn.ru/" target="_blank"></a></td><td bgcolor="#0780fe" width="33" style="padding-right: 2px" align="right"><b><a style="font-size: 11px; color: #FFFFFF; line-height:20px;  font-family: Arial; text-decoration:none;" onClick="popup_gelCMSPOP();" href="javascript://"><img src="http://cs-klan-zav.3dn.ru/s1/pop_clouse.gif" border="0" alt="" /></a></b></td></tr><tr><td colspan="3" bgcolor="#eeeeee" style="padding: 1 1 1 1px;"><a onClick="banner_gel();" href="javascript://">тут должны быть сслыки на изображения в виде html</A></a></td></tr></table></div>');
document.getElementById('popup_divMenuPOPruu').style.visibility='visible';
if (document.getElementById('popup_divMenuPOPruu').style)
window.setInterval("MovePopupWinPOPruu()", 10);
window.onerror=null;
document.body.scrollTop=10;
function MovePopupWinPOPruu() {
if (document.body.scrollTop==0)
document.getElementById('popup_divMenuPOPruu').style.top=document.documentElement.scrollTop+250; else
document.getElementById('popup_divMenuPOPruu').style.top=document.body.scrollTop+250;
}
}


а это скрипт баннеров

<script LANGUAGE="JavaScript">
<!--
var z= 3;
Banner = new Array(z);
Banner[0] = '<A HREF="http://www.dengi.far.ru/"><IMG SRC="http://cs-klan-zav.3dn.ru/111111.gif" ALT="banner1" WIDTH=468 HEIGHT=60 BORDER=2></A>';
Banner[1] = '<A HREF="http://www.dengi.far.ru/"><IMG SRC="http://cs-klan-zav.3dn.ru/6aHep2.gif" ALT="banner2" WIDTH=468 HEIGHT=60 BORDER=2></A>';
Banner[2] = '<A HREF="http://www.dengi.far.ru/"><IMG SRC="http://cs-klan-zav.3dn.ru/Free_arena_47860.jpg" ALT="banner3" WIDTH=468 HEIGHT=60 BORDER=2></A>';

//-->
</script>

<script LANGUAGE="JavaScript">
<!--
var jetzt=new Date();
var z=(jetzt.getSeconds())%3;
document.write(Banner[z]);
//-->
</script>

помогите если кто знает! буду очень признателен

DUMBASS 06.06.2009 12:42

Помогите ламеру))
 
Задали задачку на яве,не понимаю как сделать) явно что-то лёгкое,но...

Известно количество человек в группе. Людей,вес которых более 100 килограмм,будем условно называть полными(известно,что по крайней мере 1 человек в этой группе полный). Расчитать средний вес полных людей и остальных.

помогите плиз оч прошу:help:

Gvozd 06.06.2009 13:06

тебе помочь надо, или написать с нуля?
если помочь, то начинай пиши, и задавай более конкретные вопросы
если написать с нуля, то тебе в раздел работа. никто писать за тебя не будет

Riim 06.06.2009 18:56

Исходных данных вроде маловато.

Snowcore 07.06.2009 22:47

Подробнее, пожалуйста

DUMBASS 10.06.2009 15:49

Поясню,как мне сказали. Количество человек в группе произвольное,я сделал на 10 человек,мне сказали "А если там 1.000.000 человек?". Это первый оператор. Второй должен расчитать средний вес всех полных людей и средний вес всех остальных.

DUMBASS 10.06.2009 22:08

Говорят через массивы можно сделать...но в самом коде я это врятли изображу:cray:

Gvozd 10.06.2009 22:22

вам в раздел работа
писать просто так за вас никто не будет

zlodeii 29.11.2009 11:43

Изменение цвета с помощью выбора из меню со списком.!!!
 
Изменение цвета с помощью выбора из меню со списком ,пожалуйста я просто нещарю а мен надо хоть ченить показать

Liz 18.01.2010 03:44

Здравствуйте!
Спасите ламера от взрыва мозга...не зря говорят, что программирование не для девушек :( никак не могу сообразить как реализовать движение картинки по заданному маршруту! Все хрень какая-то получается..точнее и она не очень-то получается. В текстовое поле вводится след.информация: "-" и "|". получается маршрут по которому, при нажатии на кнопку, должно двигаться изображение. маршрут всегда замкнут.
Заранее спасибо. :)

PepeL 18.01.2010 05:32

Liz, смотря какая траектория движения картинки?! Если она сложная можно забить все координаты, по которым должна проходить картинка, в массив. А координаты траектории можно узнать через onmuosemove.
Хотя не очень ясно чего вы именно хотите...

Liz 18.01.2010 06:17

траектория задается пользователем в поле ввода знаками тире и |. изначально хотела в textarea все это вводить, но тут совсем все плохо ибо траекторий множество. щас что-то пытаюсь соорудить в обычном текстовом поле. получается что-то в духе ----||-|--|,где "-" вправо, "|" вниз и тд, а потом в начало и по кругу..

Liz 18.01.2010 06:23

..хотя нет. не получается..

Riim 18.01.2010 06:39

Большинство движков для анимации позволяют создавать очереди:
http://habrahabr.ru/blogs/mootools/43379/
Цитата:


'chain' — все вызовы start во время анимации будут добавлены в цепь и их анимация начнется сразу после того, как закончится текущая.




Пример на Jquery (скорее псевдокод, но может даже заработает):
for (var elem = $('div1'), path = document.getElementById('input1').value.split(''), i = 0, length = path.length; i < length; i++)
    elem.animate(path[i] == '-' ? {left: '+=10'} : {top: '+=10'}, {queue: false, duration: 2000});

Liz 18.01.2010 06:53

:) Riim, спасибо. даже не знала о существовании JavaScript фреймворков..это интересно..тока не могу определить какую сборку скачивать. вы сами им пользуетесь давно?

Riim 18.01.2010 07:14

Я на чистом javascript-е все пишу, можете тоже попробовать: http://javascript.ru/blog/Andrej-Par...cii-JavaScript

Только эта тема сложновата для новичков.

palach999 12.04.2010 23:34

привет всем!
помогите! у меня есть готовые ява скрипты, но мне нужно пояснить их код.
то есть за что отвечает та или иная строчка:(

Shaci 12.04.2010 23:46

Цитата:

Сообщение от palach999 (Сообщение 51384)
привет всем!
помогите! у меня есть готовые ява скрипты, но мне нужно пояснить их код.
то есть за что отвечает та или иная строчка:(

А што за код

kalko91 13.04.2010 00:38

Люди помогите сгочччннноооо!
Нужно выберать определённую область, указать границу, чтобы дальше фигурки(шахматные), если сдвинуть их за пределы, исчезали или возвращались на искомые места! НАДО ОПРЕДЕЛИТЬ ОБЛАСТЬ как это сделать помогите!

palach999 13.04.2010 08:01

Цитата:

Сообщение от Shaci (Сообщение 51387)
А што за код

ну он длинный его таки сюда пихать что ли?

Shaci 13.04.2010 12:54

Цитата:

Сообщение от kalko91 (Сообщение 51390)
Люди помогите сгочччннноооо!

Цитата:

Сообщение от palach999 (Сообщение 51406)
ну он длинный его таки сюда пихать что ли?

Евреи набежали )))

Shaci 13.04.2010 12:58

Цитата:

Сообщение от kalko91 (Сообщение 51390)
Люди помогите сгочччннноооо!
Нужно выберать определённую область, указать границу, чтобы дальше фигурки(шахматные), если сдвинуть их за пределы, исчезали или возвращались на искомые места! НАДО ОПРЕДЕЛИТЬ ОБЛАСТЬ как это сделать помогите!

вы хоть как-нибудь конкретизируйте вопрос.

palach999 13.04.2010 22:55

Цитата:

Сообщение от Shaci (Сообщение 51451)
Евреи набежали )))

да ну вас сам разберусь:(

darina 30.10.2013 12:07

Здраствуйте, помогите с кодом плеера, он почемуто не работает в мобильных устройствах, пишет "Error" :cray:

// Script Edit free-ringtone.ru //

var bridgeID = "bridge";
var bridgeSWF = "/player/player.swf";
var ImagePlay = "/player/play-red.jpg";
var ImagePause = "/player/pause-red.jpg";
var State = 0;
var RAND = 0;
var ObjIDS = new Object();
var CurrentFile = "";

function TrackStarted(myFile_in){

}

function TrackPaused(){
	State = 0;
	ResetGrapicStates();
	//alert("Paused");
}

function TrackDone(){
	State = 0;
	ResetGrapicStates();
	//alert("Done");
}

function getElement(id){
	return document.getElementById(id);
}

function Pause (){
	State = 0;
	getElement(bridgeID).js_pause();
}

function Play (file){
	if(State < 1){
		State = 1;
		CurrentFile = file;
		getElement(bridgeID).js_play(file);
	}
}

function ResetGrapicStates(){
	for(var prop in ObjIDS){
		var x = getElement(prop);
		x.src = ImagePlay;
		
	}
}

function PlayPause(file) {
	
	var evt = window.event|| arguments.callee.caller.arguments[0];
	var obj = evt.target || evt.srcElement;
	
	if(!obj.id){
	obj.id = "RAND" + (RAND++);
	}
	ObjIDS[obj.id] = obj.id;
	for(var prop in  ObjIDS){
		var x = getElement(prop);
		x.src = ImagePlay;
		
	}
	if(CurrentFile != file && State == 1){
		State = 0;
	}
    if (State == 1) { 
      obj.src = '/player/play-red.jpg'; 
      Pause();
    } 
    else { 
      obj.src = '/player/pause-red.jpg'; 
      Play(file); 
    } 
  }

function Write(){
	document.write('<div id="target">Error</div>');
	var so = new SWFObject(bridgeSWF, bridgeID, "1", "1", "8", "#FFFFFF" );
	so.addParam("scale", "noscale");
	so.addParam("salign", "lt");
	so.addParam("allowScriptAccess", "always");
	so.addParam("allowFullScreen", "false");
	so.addParam("menu", "false");
	so.addParam("wmode", "opaque");
	so.write ("target");
	}

if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;

Write();


За ранее спасибо!


Часовой пояс GMT +3, время: 16:21.