Comunidad de diseño web y desarrollo en internet online

Noticiero Flash + XML

Citar            
MensajeEscrito el 02 Ago 2006 10:03 pm
Busco orientación:
Tenido mi noticiero con Flash y XML, en donde los datos que recupero del XML son un titular, la fecha, noticia completa y la imagen,,quisiera saber si es posible crear un panel de gestión para que el cliente pueda modificar ese XMl sin tener que abrirlo. Es decir, una aplicación que lo que haga sea alterar el contenido del archivo para luego ya poder subirlo al servidor.

saludos.

Por Aitcar

Claber

145 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 02 Ago 2006 11:38 pm
Si claro. Pero eso lo tendrás que hacer con php...

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 03 Ago 2006 11:47 am
Muy bien, pero , alguna orientación más concreta... webs con recursos que podría visitar,,

SAlu2

Por Aitcar

Claber

145 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 03 Ago 2006 04:17 pm
Hola Aitcar, a mi me pasa algo parecido por si te sirve de algo. He creado una web en xhtml que es exclusivamente de noticias.
Para empezar he creado una base de datos con phpmyadmin que viene junto con el paquete xampp, esta para pc, mac, linux , etc... y permite crear bases de datos que en mi caso ha sido para crear las diferentes secciones de las noticas y dento de cada sección: titular, subtitulo, autor, contenido, fecha, imagen, etc...
Este programa me gestiona todas las bases de datos que tengo y escogiendo por ejemplo la tabla de deportes que he creado con los campos que te he explicado voy añadiendo el contenido de cada apartado (titulo, subtitulo, etc...) y te va almacenando las entradas de noticias.
Cuando ya lo tienes, hay una opción para exportar a xml y con los archivos xml generados ya puedo actualizar mi web.
No se si es la mejor solución, ya que un panel de control exclusivo para el cliente en php sería de maravilla, pero phpmyadmin es gratis y a mi parecer no es dificil de utilizar a este nivel básico y creo que tu cliente tal vez pudiera hacerlo. Una vez generados los xml los podría subir a la web y listo.
En dreamweaver he creado un archivo dinámico que chupa esos xml creados con phpmyadmin y repite los campos para volcar tantas noticas como haya.

Mi duda es que no se como hacer para que también reconozca las imágenes, es decir, no se como poner en un xml las imágenes de forma genérica. Ni tampoco se que poner en el campo imagen de phpmyadmin para que al crearme el xml entienda que ahí irá una imagen x.

Si me puedes echar un cable.
Saludos

Por pinkyshadow

8 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 05 Abr 2007 10:57 pm
es posible que el texto en vez de ir bajando, vaya subiendo??? Que habría que modificar en el código para que suceda esto? Muchas gracias

eSTO ES EN EL NOTICIERO

Por YORDI

3 de clabLevel



 

msie
Citar            
MensajeEscrito el 19 Abr 2007 10:21 am
pinkyshadow,, creo que darle acceso FTP al cliente para suba los nuevos XML no puede ser la mejor solución,, siempre se corre el riesgo de que se 'cargue' algo..

lo seguiré intentando con la gestión,,, hasta entonces aver si consiga más orientaciones..

un saludo
-

Por Aitcar

Claber

145 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 18 Dic 2007 08:08 pm
despues de probar y renegar pude hacer que las noticias vayan al revez les dejo el codigo. saludos y espero les sirva.


/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MONTAR LAS NOTICIAS -------------------*/
/*-------------------------------------------------------------------------------*/
function montarNoticias(){
par = true;
for (i=0; i<cant; i++){
//Ponemos la caja
_root.attachMovie ("caja_info","caja"+i,i*10);
//Creamos el color
_root["caja"+i].colorcaja = new Color(_root["caja"+i].fondo.fondocolor);
//Le damos una altura igual a 16 por el numero de lineas que tenga
_root["caja"+i].fondo._height = 16 * notis_puerto[i];

//Pintamos la caja
if (par == true){
_root["caja"+i].colorcaja.setRGB(0xEEEEEE);
_root["caja"+i].micolor = "0xEEEEEE";
par = false;
}
else{
_root["caja"+i].colorcaja.setRGB(0xFFFFFF);
_root["caja"+i].micolor = "0xFFFFFF";
par = true;
}

//Si no existe altura, le damos 0 y asi se posiciona la primera caja
//en y=0
if (altura == undefined){
altura = 0;
}
//Si existe, le damos una altura igual, a:
//"altura acumulada" = "altura acumulada" + "altura anterior clip"
else{
altura = altura + _root["caja"+(i-1)].fondo._height;
}

//Posicionamos la caja
_root["caja"+i]._x = 0;
_root["caja"+i]._y = altura;

//Creamos la caja de texto y ponemos sus propiedades
_root["caja"+i].createTextField("texto_txt",i*37,2,1,210,16 * notis_puerto[i]);
_root["caja"+i].texto_txt.html = true;
_root["caja"+i].texto_txt.multiline = true;
_root["caja"+i].texto_txt.wordWrap = true;
_root["caja"+i].texto_txt.border = false;
_root["caja"+i].texto_txt.selectable = false;
_root["caja"+i].direc_url = urls[i];

//Atacheamos al texto la hoja CSS
_root["caja"+i].texto_txt.styleSheet = estailo;

//Ponemos el titulo
_root["caja"+i].texto_txt.htmlText = "<p class='tit'>"+titulo[i]+"</p><br>";

//Ponemos los textos de las noticias
_root["caja"+i].texto_txt.htmlText += "<p class='txt'>"+text_noticia[i]+"</p>";
}
//Mostramos la pestañita
attachMovie("pestana","pestanita",2000);
pestanita._x = 0;
pestanita._y = 0;

siguiente_y = 0;
y_arriba = 0;

//Posicionamos todos los clips por debajo de 330 sobre 0
//Empezamos por el ultimo y vamos subiendo
for (i=long; i>0; i--){
if (_root["caja"+i]._y < 0){
//siguiente_y = siguiente_y + _root["caja"+i]._height + 1;
//_root["caja"+i]._y = siguiente_y;
}
}

//Una vez esta todo montado movemos las noticias
moverNoticias();
}

/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MOVER LAS NOTICIAS --------------------*/
/*-------------------------------------------------------------------------------*/
function moverNoticias(){
//Si es la primera vez forzamos el movimiento, si no empiezan paradas las cajas
if (primera_vez == undefined){
//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;

for (j=0; j<cant; j++){

if (_root["caja"+j]._y >0){

y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}

_root["caja"+i]._y -= 1;
}
}
primera_vez = false;
}
/***************************************************************************/


//"el_fondo" controla a cada fotograma si estamos o no encima de las noticias
el_fondo.onEnterFrame = function(){
for (i=0; i<cant; i++){
//Si clicamos en la caja, vamos a la direccion "x"
_root["caja"+i].onPress = function(){
getURL (this.direc_url, "_blank");
}
//Si nos ponemos encima de la caja, eliminamos el evento y se para
_root["caja"+i].onRollOver = function(){
//Iluminar
this.colorcaja.setRGB(0xA4D8E3);
delete _root.onEnterFrame;
}
//Si nos salimos de las cajas, se empieza a mover otra vez
_root["caja"+i].onRollOut = function(){
//Pintamos la caja con el color anterior
this.colorcaja.setRGB(this.micolor);

//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;
for (j=0; j<cant; j++){

if (_root["caja"+j]._y > 0){
y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}
_root["caja"+i]._y -= 1;
}
}
}
}
}
}

Por adriango

1 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 07 Jul 2008 06:01 pm
Hola Adriango! el script funciona pero no me muestra las noticias. Me explico, al publicar la pelicula me muestra el titulo y el estilo, pero en el bloque de texto aparece Undefined. Que tengo mal??

Te envio el codigo completoy te agradezco de antemano si me puedes ayudar con esto. Le cfuncione demasiado pero tire la toalla. Mil Gracias!!!!:

stop();

//Cargar XML de las noticias
noticias = new XML();
noticias.ignoreWhite = true;
noticias.onLoad = function (){

//Porcentajes y esas cosas
totalxml = noticias.getBytesTotal();
cargadoxml = noticias.getBytesLoaded();
porcentajexml = Math.round((cargadoxml/totalxml)*100);

//Si esta cargado del todo
if (porcentajexml >= 100) {
//Borramos el cargando
removeMovieClip(cargando);

//Shortcuts del XML
notis_puerto = new Array();
titulo = new Array();
urls = new Array();

//Cogemos el numero de noticias
cant = noticias.firstChild.childNodes.length;

cargarCSS();
}
}

//Atacheamos y posicionamos el "cargando xml"
attachMovie("carga_xml","cargando",2);
cargando._x = 75;
cargando._y = 105;

//Atacheamos la linea de abajo del todo
attachMovie("linea","linea_abajo",5000);
linea_abajo._x = 0;
linea_abajo._y = 203;

//Atacheamos la caja de fondo

//Cargamos XML
noticias.load("noticias.xml");


/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA CARGAR LA HOJA CSS --------------------*/
/*-------------------------------------------------------------------------------*/
function cargarCSS(){
//Creamos la hoja de estilo
estailo = new TextField.StyleSheet();

//Cuando este cargando...
estailo.onLoad = function(){

//Porcentajes y esas cosas
totalcss = estailo.getBytesTotal();
cargadocss = estailo.getBytesLoaded();
porcentajecss = Math.round((cargadocss/totalcss)*100);

//Si esta cargado del todo
if (porcentajecss >= 100) {
//Borramos el cargando
removeMovieClip(cargando2);

//Una vez esta cargada la CSS ya podemos saber cuantas lineas hay
//por cada caja de texto

//Creamos un clip y un campo de texto temporales
_root.createEmptyMovieClip("temp_mc", 7);

//Al campo de texto le ponemos el mismo tamaño de ancho que va a haber en
//el de verdad. Le ponemos alto 16, que es lo que mide una linea. Así
//podemos saber el número de líneas que tenemos.
temp_mc.createTextField ("notis_txt",8,-150,-20,168,16);

//Ponemos las propiedades a nuestro campo de texto nuevo
temp_mc.notis_txt.multiline = true;
temp_mc.notis_txt.wordWrap = true;
temp_mc.notis_txt.html = true;

for (i=0; i<cant; i++){
//Cogemos los titulos de las noticias
titulo[i] = noticias.firstChild.childNodes[i].attributes.titulo;

//Cogemos las urls de las noticias
urls[i] = noticias.firstChild.childNodes[i].attributes.urls;

//Cogemos el texto y lo ponemos en la caja de texto temporal
temp_mc.notis_txt.htmlText = "<p class='tit'>"+titulo[i]+"</p><br><p class='txt'>"+noticias.firstChild.childNodes[i].firstChild+"</p>";

//Cogemos el numero de lineas por texto
notis_puerto[i] = temp_mc.notis_txt.maxscroll-1;
}
//Eliminamos el clip temporal
removeMovieClip(_root["temp_mc"]);
//Montamos las noticias
montarNoticias();
}

}
attachMovie("carga_css","cargando2",3);
cargando2._x = 105;
cargando2._y = 105;
estailo.load("noticias.css");
}


/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MONTAR LAS NOTICIAS -------------------*/
/*-------------------------------------------------------------------------------*/
function montarNoticias(){
par = true;
for (i=0; i<cant; i++){
//Ponemos la caja
_root.attachMovie ("caja_info","caja"+i,i*10);
//Creamos el color
_root["caja"+i].colorcaja = new Color(_root["caja"+i].fondo.fondocolor);
//Le damos una altura igual a 16 por el numero de lineas que tenga
_root["caja"+i].fondo._height = 16 * notis_puerto[i];

//Pintamos la caja
if (par == true){
_root["caja"+i].colorcaja.setRGB(0xEEEEEE);
_root["caja"+i].micolor = "0xEEEEEE";
par = false;
}
else{
_root["caja"+i].colorcaja.setRGB(0xFFFFFF);
_root["caja"+i].micolor = "0xFFFFFF";
par = true;
}

//Si no existe altura, le damos 0 y asi se posiciona la primera caja
//en y=0
if (altura == undefined){
altura = 0;
}
//Si existe, le damos una altura igual, a:
//"altura acumulada" = "altura acumulada" + "altura anterior clip"
else{
altura = altura + _root["caja"+(i-1)].fondo._height;
}

//Posicionamos la caja
_root["caja"+i]._x = 0;
_root["caja"+i]._y = altura;

//Creamos la caja de texto y ponemos sus propiedades
_root["caja"+i].createTextField("texto_txt",i*37,2,1,210,16 * notis_puerto[i]);
_root["caja"+i].texto_txt.html = true;
_root["caja"+i].texto_txt.multiline = true;
_root["caja"+i].texto_txt.wordWrap = true;
_root["caja"+i].texto_txt.border = false;
_root["caja"+i].texto_txt.selectable = false;
_root["caja"+i].direc_url = urls[i];

//Atacheamos al texto la hoja CSS
_root["caja"+i].texto_txt.styleSheet = estailo;

//Ponemos el titulo
_root["caja"+i].texto_txt.htmlText = "<p class='tit'>"+titulo[i]+"</p><br>";

//Ponemos los textos de las noticias
_root["caja"+i].texto_txt.htmlText += "<p class='txt'>"+text_noticia[i]+"</p>";
}
//Mostramos la pestañita
attachMovie("pestana","pestanita",2000);
pestanita._x = 0;
pestanita._y = 0;

siguiente_y = 0;
y_arriba = 0;

//Posicionamos todos los clips por debajo de 330 sobre 0
//Empezamos por el ultimo y vamos subiendo
for (i=cant; i>0; i--){
if (_root["caja"+i]._y < 0){
//siguiente_y = siguiente_y + _root["caja"+i]._height + 1;
//_root["caja"+i]._y = siguiente_y;
}
}

//Una vez esta todo montado movemos las noticias
moverNoticias();
}

/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MOVER LAS NOTICIAS --------------------*/
/*-------------------------------------------------------------------------------*/
function moverNoticias(){
//Si es la primera vez forzamos el movimiento, si no empiezan paradas las cajas
if (primera_vez == undefined){
//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;

for (j=0; j<cant; j++){

if (_root["caja"+j]._y >0){

y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}

_root["caja"+i]._y -= 1;
}
}
primera_vez = false;
}
/***************************************************************************/


//"el_fondo" controla a cada fotograma si estamos o no encima de las noticias
el_fondo.onEnterFrame = function(){
for (i=0; i<cant; i++){
//Si clicamos en la caja, vamos a la direccion "x"
_root["caja"+i].onPress = function(){
getURL (this.direc_url, "_blank");
}
//Si nos ponemos encima de la caja, eliminamos el evento y se para
_root["caja"+i].onRollOver = function(){
//Iluminar
this.colorcaja.setRGB(0xA4D8E3);
delete _root.onEnterFrame;
}
//Si nos salimos de las cajas, se empieza a mover otra vez
_root["caja"+i].onRollOut = function(){
//Pintamos la caja con el color anterior
this.colorcaja.setRGB(this.micolor);

//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;
for (j=0; j<cant; j++){

if (_root["caja"+j]._y > 0){
y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}
_root["caja"+i]._y -= 1;
}
}
}
}
}
}

Por vecsus

1 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 15 Jul 2008 04:23 am
AUXILIO!!!!!!
Quiero montar este panel de noticias en mi web pero para mayor comodidad de los lectores deseo cambiar la direccion en la q se desplaza el texto (hacia abajo) que vaya hacia arriba, por fa es urgente.

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie
Citar            
MensajeEscrito el 17 Jul 2008 06:18 pm
Hola

Yo estoy utilizando el lector de noticias en flash con Xml de "jmontoya" que encontré entre los turoriales de Cristalab.
Es muy práctico y sencillo, pero estoy intentando colocar un temporizador dentro del código sin mucho éxito. Lo que quiero es hacer que el noticiero cambie la noticia automáticamente cada tantos segundos y vuelva a empezar al llegar a la última.

Lo he adaptado del original para que no utilice imágenes, por que no me interesa en este caso

Este es el código:

//Permite caracteres tradicionales como letras con tilde la ñ, etc.
System.useCodepage = true;

//Se declara la variable indice de tipo número (utilizada para referencia la noticia a mostrar)
var indice:Number;

//Se declara la variable noticias_xml de tipo XML (utilizada para almacenar el documento xml)
var noticias_xml:XML;

/*
Funcion cargarDatos (utilizada para cargar y cambiar las noticias en el documento)
Esta función recibe un parámetro "_indice" que corresponde al elemento noticia a mostrar
*/
function cargarDatos(_indice:Number){
//Se inicializan variables utilizadas para almenar los datos de una noticia
var fecha:String;
var titulo:String;
var mensaje:String;
var imagen:String;

//Recuperando datos del objeto xml
//Se accede al primer elemento [noticia] y se recupera la fecha desde el atributo [fecha]
fecha = noticias_xml.firstChild.childNodes[_indice].attributes.fecha;

//Se accede al primer hijo de elemento [noticia] y se recupera al valor del primer elemento de [titulo]
titulo = noticias_xml.firstChild.childNodes[_indice].firstChild.firstChild.nodeValue;

//Se accede al segundo hijo de elemento [noticia] y se recupera el valor del primer elemento de [mensaje]
mensaje = noticias_xml.firstChild.childNodes[_indice].firstChild.nextSibling.firstChild.nodeValue

//Mostrando los datos recuperados en el cuado de texto mensaje_txt
_root.mensaje_txt.htmlText = "";
_root.mensaje_txt.htmlText += "<p align='center'><font color='#006633' size='12'><b>" + titulo + "</b></font></p>";
_root.mensaje_txt.htmlText += "<p><font size='10'>" + mensaje + "</font>";
_root.mensaje_txt.htmlText += "<font color='#666666' size='10'>Publicado: " + fecha + "</font></p>";

}
//Función que permite avanzar a la [noticia] siguiente almacenada en el objeto xml
siguiente_btn.onPress = function(){
//comprobando si existe el siguiente elemento [noticia]
if(noticias_xml.firstChild.childNodes[indice+1] != null){//retringue a avanzar solo si hay una [noticia] siguiente
indice++; //incrementado en uno el indice
cargarDatos(indice); //recuprando y mostrando los datos y la imagen en la pantalla
}

}

//Función que permite retroceder a la noticia anterior almacenada en el objeto xml
anterior_btn.onPress = function(){
//comprobando si existe una elemento [noticia] anterior
if(noticias_xml.firstChild.childNodes[indice-1] != null){//retringue a avanzar solo si hay una [noticia] anterior
indice--; //reducciendo en uno el indice
cargarDatos(indice); //recuprando y mostrando los datos y la imagen en la pantalla
}
}


//Inicializaciones
indice=0; //inicializando indice en 0 para mostrar la primera noticia

//creando el objeto noticias_xml de typo XML
noticias_xml = new XML();

//Permite que el objeto XML ignore los espacios en blanco entre marca y marca del documento XML
noticias_xml.ignoreWhite = true;

//El método load() permite cargar el documento xml "noticias.xml"
noticias_xml.load("noticias.xml");

//El evento onLoad de activa cuado se haya cargado el documento noticias.xml
noticias_xml.onLoad = function(){
//Se llama a la funcion cragarDatos para mostar la primera noticia (esto por la variable indice en 0)
cargarDatos(indice);
}

Alguien me podría ayudar para introducir un temporizador que haga pasar las noticias solas y vuelva a empezar desde el principio cuando llegue a la última?

Muchas gracias por adelantado.

Por saukob

9 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 10 Mar 2010 02:49 pm
Si lo que pasa es que sigue igual no me publica las noticas este es mi codigo tengo el mismo problema no aparece la nota.


stop();

//Cargar XML de las noticias
noticias = new XML();
noticias.ignoreWhite = true;
noticias.onLoad = function (){

//Porcentajes y esas cosas
totalxml = noticias.getBytesTotal();
cargadoxml = noticias.getBytesLoaded();
porcentajexml = Math.round((cargadoxml/totalxml)*100);

//Si esta cargado del todo
if (porcentajexml >= 100) {
//Borramos el cargando
removeMovieClip(cargando);

//Shortcuts del XML
notis_puerto = new Array();
titulo = new Array();
urls = new Array();

//Cogemos el numero de noticias
cant = noticias.firstChild.childNodes.length;

cargarCSS();
}
}

//Atacheamos y posicionamos el "cargando xml"
attachMovie("carga_xml","cargando",2);
cargando._x = 75;
cargando._y = 105;

//Atacheamos la linea de abajo del todo
attachMovie("linea","linea_abajo",5000);
linea_abajo._x = 0;
linea_abajo._y = 203;

//Atacheamos la caja de fondo

//Cargamos XML
noticias.load("noticias.xml");


/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA CARGAR LA HOJA CSS --------------------*/
/*-------------------------------------------------------------------------------*/
function cargarCSS(){
//Creamos la hoja de estilo
estailo = new TextField.StyleSheet();

//Cuando este cargando...
estailo.onLoad = function(){

//Porcentajes y esas cosas
totalcss = estailo.getBytesTotal();
cargadocss = estailo.getBytesLoaded();
porcentajecss = Math.round((cargadocss/totalcss)*100);

//Si esta cargado del todo
if (porcentajecss >= 100) {
//Borramos el cargando
removeMovieClip(cargando2);

//Una vez esta cargada la CSS ya podemos saber cuantas lineas hay
//por cada caja de texto

//Creamos un clip y un campo de texto temporales
_root.createEmptyMovieClip("temp_mc", 7);

//Al campo de texto le ponemos el mismo tamaño de ancho que va a haber en
//el de verdad. Le ponemos alto 16, que es lo que mide una linea. Así
//podemos saber el número de líneas que tenemos.
temp_mc.createTextField ("notis_txt",8,-150,-20,168,16);

//Ponemos las propiedades a nuestro campo de texto nuevo
temp_mc.notis_txt.multiline = true;
temp_mc.notis_txt.wordWrap = true;
temp_mc.notis_txt.html = true;

for (i=0; i<cant; i++){
//Cogemos los titulos de las noticias
titulo[i] = noticias.firstChild.childNodes[i].attributes.titulo;

//Cogemos las urls de las noticias
urls[i] = noticias.firstChild.childNodes[i].attributes.urls;

//Cogemos el texto y lo ponemos en la caja de texto temporal
temp_mc.notis_txt.htmlText = "<p class='tit'>"+titulo[i]+"</p><br><p class='txt'>"+noticias.firstChild.childNodes[i].firstChild+"</p>";

//Cogemos el numero de lineas por texto
notis_puerto[i] = temp_mc.notis_txt.maxscroll-1;
}
//Eliminamos el clip temporal
removeMovieClip(_root["temp_mc"]);
//Montamos las noticias
montarNoticias();
}

}
attachMovie("carga_css","cargando2",3);
cargando2._x = 105;
cargando2._y = 105;
estailo.load("noticias.css");
}


/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MONTAR LAS NOTICIAS -------------------*/
/*-------------------------------------------------------------------------------*/
function montarNoticias(){
par = true;
for (i=0; i<cant; i++){
//Ponemos la caja
_root.attachMovie ("caja_info","caja"+i,i*10);
//Creamos el color
_root["caja"+i].colorcaja = new Color(_root["caja"+i].fondo.fondocolor);
//Le damos una altura igual a 16 por el numero de lineas que tenga
_root["caja"+i].fondo._height = 16 * notis_puerto[i];

//Pintamos la caja
if (par == true){
_root["caja"+i].colorcaja.setRGB(0xEEEEEE);
_root["caja"+i].micolor = "0xEEEEEE";
par = false;
}
else{
_root["caja"+i].colorcaja.setRGB(0xFFFFFF);
_root["caja"+i].micolor = "0xFFFFFF";
par = true;
}

//Si no existe altura, le damos 0 y asi se posiciona la primera caja
//en y=0
if (altura == undefined){
altura = 0;
}
//Si existe, le damos una altura igual, a:
//"altura acumulada" = "altura acumulada" + "altura anterior clip"
else{
altura = altura + _root["caja"+(i-1)].fondo._height;
}

//Posicionamos la caja
_root["caja"+i]._x = 0;
_root["caja"+i]._y = altura;

//Creamos la caja de texto y ponemos sus propiedades
_root["caja"+i].createTextField("texto_txt",i*37,2,1,210,16 * notis_puerto[i]);
_root["caja"+i].texto_txt.html = true;
_root["caja"+i].texto_txt.multiline = true;
_root["caja"+i].texto_txt.wordWrap = true;
_root["caja"+i].texto_txt.border = false;
_root["caja"+i].texto_txt.selectable = false;
_root["caja"+i].direc_url = urls[i];

//Atacheamos al texto la hoja CSS
_root["caja"+i].texto_txt.styleSheet = estailo;

//Ponemos el titulo
_root["caja"+i].texto_txt.htmlText = "<p class='tit'>"+titulo[i]+"</p><br>";

//Ponemos los textos de las noticias
_root["caja"+i].texto_txt.htmlText += "<p class='txt'>"+text_noticia[i]+"</p>";
}
//Mostramos la pestañita
attachMovie("pestana","pestanita",2000);
pestanita._x = 0;
pestanita._y = 0;

siguiente_y = 0;
y_arriba = 0;

//Posicionamos todos los clips por debajo de 330 sobre 0
//Empezamos por el ultimo y vamos subiendo
for (i=cant; i>1; i--){
if (_root["caja"+i]._y < 1){
//siguiente_y = siguiente_y + _root["caja"+i]._height + 1;
//_root["caja"+i]._y = siguiente_y;
}
}

//Una vez esta todo montado movemos las noticias
moverNoticias();
}

/*-------------------------------------------------------------------------------*/
/*--------------------- FUNCION PARA MOVER LAS NOTICIAS --------------------*/
/*-------------------------------------------------------------------------------*/
function moverNoticias(){
//Si es la primera vez forzamos el movimiento, si no empiezan paradas las cajas
if (primera_vez == undefined){
//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;

for (j=0; j<cant; j++){

if (_root["caja"+j]._y >0){

y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}

_root["caja"+i]._y -= 1;
}
}
primera_vez = false;
}
/***************************************************************************/


//"el_fondo" controla a cada fotograma si estamos o no encima de las noticias
el_fondo.onEnterFrame = function(){
for (i=0; i<cant; i++){
//Si clicamos en la caja, vamos a la direccion "x"
_root["caja"+i].onPress = function(){
getURL (this.direc_url, "_blank");
}
//Si nos ponemos encima de la caja, eliminamos el evento y se para
_root["caja"+i].onRollOver = function(){
//Iluminar
this.colorcaja.setRGB(0xA4D8E3);
delete _root.onEnterFrame;
}
//Si nos salimos de las cajas, se empieza a mover otra vez
_root["caja"+i].onRollOut = function(){
//Pintamos la caja con el color anterior
this.colorcaja.setRGB(this.micolor);

//Creamos el evento y se empiezan a mover las cajas
_root.onEnterFrame = function(){

for (i=0; i<cant; i++){

if (_root["caja"+i]._y < -_root["caja"+i]._height){
y_arriba = -_root["caja"+i]._height;
for (j=0; j<cant; j++){

if (_root["caja"+j]._y > 0){
y_actual = _root["caja"+j]._y;
if (y_actual > y_arriba){
y_arriba = y_actual+_root["caja"+j]._height-_root["caja"+i]._height;
}
}
}

_root["caja"+i]._y = y_arriba + _root["caja"+i]._height + 1;
}
_root["caja"+i]._y -= 1;
}
}
}
}
}
}

Por jrsjrm

0 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.