Вход

Просмотр полной версии : кнопка, учитывающая адрес страницы


Kirill_Rave
11.08.2009, 20:38
..искал, нигде не нашёл :rolleyes:

хотелось бы создать такую кнопку, что бы она была универсальной - учитывала адрес страницы, например "http://xz.ru/xz/po001.html" Нажимаешь на кнопку, она "смотрит" на три последних цифры прибавляет 1 и совершает переход с "po001.html" к "po002.html"

..возможно ли вообще такое? если да, то хотелось бы узнать подробности

alekslitvinenk
11.08.2009, 22:08
import flash.external.ExternalInterface;

//var tt:TextField = _root.createTextField("tt", _root.getNextHighestDepth(), 0,0, 300, 30);
but_mc.onPress = function(){
var loc:String = String(ExternalInterface.call("function showLoc(){return window.location.href}"));
var tempArray:Array = loc.split('/');
var file = tempArray.pop();
var fname:String = file.split('.').shift();
var fext:String = file.split('.').pop();
var fnum:Number = parseInt(fname.substr(4));
tempArray.push(fname.substr(0,4)+(++fnum));
var newURL = tempArray.join('/')+'.'+fext;
//tt.text = newURL;
getURL(newURL);
}
Так должно сработать

Kirill_Rave
13.08.2009, 16:23
..на сколько я понял..это нужно было прописать в самой кнопке?..не очень понимаю значение функций(

alekslitvinenk
13.08.2009, 17:08
создайте кнопку, присвойте ей имя but_mc.
и поместите в кадре с кнопкой этот код.
// - это комментарий, код в комментарии не выполняется...

Kirill_Rave
13.08.2009, 18:41
я думал, что сам смогу разобраться с кодами по каким-нибудь "словарям" - не получается(

var loc:String = String(ExternalInterface.call("function showLoc(){return window.location.href}"));
var tempArray:Array = loc.split('/');
var file = tempArray.pop();
var fname:String = file.split('.').shift();
var fext:String = file.split('.').pop();
var fnum:Number = parseInt(fname.substr(4));
tempArray.push(fname.substr(0,4)+(++fnum));
var newURL = tempArray.join('/')+'.'+fext;

вот этот блок не могу разобрать, что к чему(...поясните пожалуйста, если не сложно (мне ж ещё 2ую кнопку "назад" делать)

p.s. наверное, бестолково давать ссылку и говорить, что не получается..т.к. адрес уже имеет немного иной характер: http://www.kirillrave.ru/des/log001.html (мой подопытноучебный сайт)

p.s2на счёт "//" вкурсе))

iflamberg
13.08.2009, 18:59
1) ваше использование "//" в качестве смайлика бесит и путает
2) если вы не будете оформлять код тегами,то вас очень скоро забанят
3)

var loc:String = String(ExternalInterface.call("function showLoc(){return window.location.href}")); //вызываем js-функцию в броузере, которая возвращает адрес страницы
var tempArray:Array = loc.split('/'); //режем в массив адрес по символу "/"
var file = tempArray.pop(); //достаем последний элемент из массива, это будет имя файла
var fname:String = file.split('.').shift(); //режем строку по ".", достаем первый элемент(это будет имя файла)
var fext:String = file.split('.').pop(); //в fext будет расширение файла (.jpg например)
var fnum:Number = parseInt(fname.substr(4)); //считаем, что начиная с 4го символа в имени файла - число, пытаемся его передать в переменную fnum
tempArray.push(fname.substr(0,4)+(++fnum)); //формируем в массиве имя следующей загружаемой картинки
var newURL = tempArray.join('/')+'.'+fext; //превращаем массив в строку url и не забываем добавить расширение файла

Kirill_Rave
13.08.2009, 22:55
сорри, ок (всё исправил)

спасибо

p.s. и всё равно, мозги кипят - кнопка не работает(( (вернее работает на половину)..вы не могли бы посмотреть исходник плз?