€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90 •
Посмотреть все темы
Размер окна вебкамер.
1
1163
Денис
@Анатолич
21.10.2012
В связи с ограниченостью пространства для окон трансляции. У меня возник вопрос с размерами окон.
Хотелось бы одну трансляцию сделать большого размера, а все дополнительные маленького.
Можно ли в скрипт добавить переменную, которая бы определяла количество открытых окон?
если количество окон, (помимо своей трансляции) больше одного, то размеры по вертикали и горизонтали уменьшались бы в двое.
и чтобы при нажатии на ссылку "закрыть" эта переменная бы уменьшалась.
то есть когда будут закрыты все окна она бы была равна нулю.
вот сам скрипт.
Показать текст
function loadvideo(obj,host,share,rec) {
var nickid=0; if(share) {for(var i=0; i< share.length; i++) nickid+=share.charCodeAt(i)*(i+1);}
var camid="mpchat-"+parent.chatlogin+"_"+nickid;
var obj1=document.getElementById(obj);
if(!obj1) {
var obj1=document.createElement('DIV');obj1.id=obj;
document.getElementById("cams").appendChild(obj1);
}
if(host=="") {obj1.innerHTML=" "; obj1.style.display="none"; return;}
obj1.innerHTML="<div id=flash"+obj+"><a href=http://get.adobe.com/flashplayer/ target=_blank><font size=1>Установите Flash Player!</font></a><br></div><div id=closer"+obj+"></div>";
/если количество открытых окон меньше 1, то размертакой/
var flashw=450; var flashh=300;
/если больше единицы, то 225 на 150/
var flashvars='host='+host+'&m=4&q=6&r=12&sharefile='+camid+'&sharelive='+camid+'&shareplay=#'+camid;
if(rec==1) flashvars+='&rec=1';
var stream="Просмотр"; var close="<a href=# onclick='loadvideo(\""+obj+"\",\"\"); return false;'><font size=1>закрыть</font></a>";
if(rec) {stream="Вещание"; close="<a href=# onclick='parent.gettime=new Date().getTime(); parent.setstatus(0); return false;'><font size=1>закрыть</font></a>";}
document.getElementById("closer"+obj).innerHTML+="<font size=1><b>"+stream+" #"+share+"</b></font> - "+close+"";
swfobject.embedSWF("http://videochaty.ru/webka/webcam-new_v4_12.swf", "flash"+obj, flashw, flashh, "9", "http://mpchat.com/blank/expressInstall.swf", {}, {allowfullscreen:"true",flashvars:flashvars},{});
obj1.style.display="inline-block";
}
хотя может я неправильно понимаю принцип работы скрипта и он открывается каждый раз по новой при открытии нового вещания.
1007
BETEPAH
@BETEPAH
21.10.2012
Анатолич
пишет:
Можно ли в скрипт добавить переменную, которая бы определяла количество открытых окон?
Думаю, что так должно получиться. Поставить в начало функции loadvideo
var window_count = document.getElementById('cams').getElementsByTagName('DIV').length;
1163
Денис
@Анатолич
31.10.2012
BETEPAH
пишет:
Анатолич
пишет:
Можно ли в скрипт добавить переменную, которая бы определяла количество открытых окон?
Думаю, что так должно получиться. Поставить в начало функции loadvideo
var window_count = document.getElementById('cams').getElementsByTagName('DIV').length;
Попробовал так, но ничего не получилось.
решил сделать по своему. Получилось вот что.
Показать текст
var window_count=0;
function loadvideo(obj,host,share,rec) {
var nickid=0; if(share) {for(var i=0; i< share.length; i++) nickid+=share.charCodeAt(i)*(i+1);}
var camid="mpchat-"+parent.chatlogin+"_"+nickid;
var obj1=document.getElementById(obj);
if(!obj1) {
var obj1=document.createElement('DIV');obj1.id=obj;
document.getElementById("cams").appendChild(obj1);
}
if(host=="") {obj1.innerHTML=" "; obj1.style.display="none"; return;}
obj1.innerHTML="<div id=flash"+obj+"><a href=http://get.adobe.com/flashplayer/ target=_blank><font size=1>Установите Flash Player!</font></a><br></div><div id=closer"+obj+"></div>";
if(window_count<1) {var flashw=450; var flashh=340;}
else
{var flashw=227; var flashh=170;};
var flashvars='host='+host+'&m=4&q=6&r=12&sharefile='+camid+'&sharelive='+camid+'&shareplay=#'+camid;
if(rec==1) flashvars+='&rec=1';
if(rec==0) window_count=window_count+1;
var stream="Просмотр"; var close="<a href=# onclick='loadvideo(\""+obj+"\",\"\"); window_count=window_count-1; return false;'><font size=1>закрыть</font></a>";
if(rec) {stream="Вещание"; close="<a href=# onclick='parent.gettime=new Date().getTime(); parent.setstatus(0); window_count=window_count+1; return false;'><font size=1>закрыть</font></a>"}
document.getElementById("closer"+obj).innerHTML+="<font size=1><b>"+stream+" #"+share+"</b></font> - "+close+"";
swfobject.embedSWF("http://videochaty.ru/webka/webcam-new_v4_12.swf", "flash"+obj, flashw, flashh, "9", "http://mpchat.com/blank/expressInstall.swf", {}, {allowfullscreen:"true",flashvars:flashvars},{});
obj1.style.display="inline-block";
}
В целом скрипт рабочий. можно добиться, чтобы одно окно было большое, остальные маленькие. или чтобы все окна стали маленькими.
Но все равно не совсем удобно.
Есть задумка. к надписи внизу добавить
+|-
Хотелось бы чтобы при нажатии на символ "+" окно вещания перегружалось и размер становился 450х340
при нажатии на символ "-" окно вещания перегружалось и размер становился 227х170
но с реализацией полный ступор. Может кто нибуть сможет подсказать, возможно ли реализовать такое?
И если возможно то как?