¿Necesita ayuda con el desplazamiento de texto vertical automático
- developer_new
- Born


- Registrado: Ago 10, 2010
- Mensajes: 2
- Status: Offline
Im nuevo a parpadear y se ha quedado tratando de diseñar un enrollamiento automático de texto vertical.
Aquí es lo que me propongo hacer:
- Contar con un ticker de noticias como cuadro de texto a través del cual se desplaza verticalmente.
- El contenido textual vendrá de un archivo de texto externo.
- El texto en el archivo externo también tendrá enlaces html capaces de clic.
- Cuando el ratón entra el área de contenido, el desplazamiento se detendría.
- Si algún enlace es visible en el área de contenido en ese momento, el usuario será capaz de hacer clic en él.
- Cuando el ratón sale del área de contenido, el desplazamiento se mantenga.
Básicamente, su una marquesina html que se ve en tantas páginas en estos días.
El siguiente fue mi acercamiento a la solución del problema. Tiene muy cerca y luego se pegó gif "alt = =":(" título" Sad ">
- He creado un cuadro de texto dinámico y hacer que cargue desde el archivo externo. El cuadro de texto multilínea y dinámica ha autoSize se establece en true. Así que el tamaño de la misma crece en función del contenido del archivo externo.
- A continuación, convertir el cuadro de texto "con carga externa" en un clip de película y lo llamó content_mc.
- Creación de un rectángulo redondeado (mi área de visualización) y se convierte eso a un clip de película llamado mask_mc.
- En el escenario, el content_mc es en una sola capa (el contenido) y mask_mc está en otra capa (la máscara).
- Se ha añadido otra capa (acción) y en el primer fotograma de la línea de tiempo principal, entré en la secuencia de comandos de acción para establecer la mask_mc como la máscara de content_mc.
- También en este AS, que alinea la parte superior con la parte superior content_mc mask_mc para que el contenido es visible en la salida.
- Luego, en la capa de contenido, he insertado un clip de película "controlador". Este clip tiene dos cuadros y todo lo que hace es que mueve el _root.content_mc por una unidad fija hasta el fondo de content_mc es sobre la parte superior mask_mc. En ese punto, establece la parte superior de la content_mc de nuevo a la parte superior de mask_mc.
Desde que tienen poco o ningún entrenamiento flash, se puede entender mi entusiasmo cuando los pasos anteriores trabajado y me dieron un texto con desplazamiento bastante suave instalado en mi ventana viwing. También puede hacer clic en todos los eslabones de mi texto. Yayyy!
Luego me dio a la tarea de hacer el rollo detener y reanudar el ratón entrar y salir del evento. Lo que hice fue:
- En la escritura de la acción sobre la capa de la acción, simplemente se definen dos content_mc.onRollOver y funciones content_mc.onRollOut. En la primera parada de la imagen en movimiento del controlador y en el segundo, toco la imagen en movimiento del controlador.
La estrategia anteriormente también trabajó como yo quería, pero creó un nuevo problema! Cada vez que el ratón entra el área de máscara, el puntero del mouse se convierte en un cursor de mano haciendo clic (el que usa para hacer clic en los enlaces), y que no me permite hacer clic en cualquiera de los enlaces html más! Sus casi como si el clip de película content_mc se ha convertido en un botón!
Sin decir que esto es inaceptable en mi caso si no puede hacer clic en los enlaces html en el contenido del texto original. He buscado en Google un poco y hay que admitir que no he tenido mucha suerte (¿por qué iba yo a publicar aquí y en otros lugares?). Desesperadamente necesitan asistencia algunos con la solución de este. Algunos de los enfoques que he visto en google wouldnt trabajo para mí. Por ejemplo, tener botones invisibles para los enlaces html. Por supuesto que el trabajo wouldnt desde mi texto proviene de un archivo de texto externos sobre los cuales no tengo control.
Cualquier orientación en la dirección correcta será muy apreciada. Y por supuesto, casi no tengo tiempo para solucionar esto. Pero ya que lo que estoy tratando de conseguir es algo tan simple, Im suponiendo que la solución no se llevaría a prohibitivamente largo.
Gracias de antemano a toda la gente amable y servicial que se vierte con sus sugerencias.
Aquí es lo que me propongo hacer:
- Contar con un ticker de noticias como cuadro de texto a través del cual se desplaza verticalmente.
- El contenido textual vendrá de un archivo de texto externo.
- El texto en el archivo externo también tendrá enlaces html capaces de clic.
- Cuando el ratón entra el área de contenido, el desplazamiento se detendría.
- Si algún enlace es visible en el área de contenido en ese momento, el usuario será capaz de hacer clic en él.
- Cuando el ratón sale del área de contenido, el desplazamiento se mantenga.
Básicamente, su una marquesina html que se ve en tantas páginas en estos días.
El siguiente fue mi acercamiento a la solución del problema. Tiene muy cerca y luego se pegó gif "alt = =":(" título" Sad ">
- He creado un cuadro de texto dinámico y hacer que cargue desde el archivo externo. El cuadro de texto multilínea y dinámica ha autoSize se establece en true. Así que el tamaño de la misma crece en función del contenido del archivo externo.
- A continuación, convertir el cuadro de texto "con carga externa" en un clip de película y lo llamó content_mc.
- Creación de un rectángulo redondeado (mi área de visualización) y se convierte eso a un clip de película llamado mask_mc.
- En el escenario, el content_mc es en una sola capa (el contenido) y mask_mc está en otra capa (la máscara).
- Se ha añadido otra capa (acción) y en el primer fotograma de la línea de tiempo principal, entré en la secuencia de comandos de acción para establecer la mask_mc como la máscara de content_mc.
- También en este AS, que alinea la parte superior con la parte superior content_mc mask_mc para que el contenido es visible en la salida.
- Luego, en la capa de contenido, he insertado un clip de película "controlador". Este clip tiene dos cuadros y todo lo que hace es que mueve el _root.content_mc por una unidad fija hasta el fondo de content_mc es sobre la parte superior mask_mc. En ese punto, establece la parte superior de la content_mc de nuevo a la parte superior de mask_mc.
Desde que tienen poco o ningún entrenamiento flash, se puede entender mi entusiasmo cuando los pasos anteriores trabajado y me dieron un texto con desplazamiento bastante suave instalado en mi ventana viwing. También puede hacer clic en todos los eslabones de mi texto. Yayyy!
Luego me dio a la tarea de hacer el rollo detener y reanudar el ratón entrar y salir del evento. Lo que hice fue:
- En la escritura de la acción sobre la capa de la acción, simplemente se definen dos content_mc.onRollOver y funciones content_mc.onRollOut. En la primera parada de la imagen en movimiento del controlador y en el segundo, toco la imagen en movimiento del controlador.
La estrategia anteriormente también trabajó como yo quería, pero creó un nuevo problema! Cada vez que el ratón entra el área de máscara, el puntero del mouse se convierte en un cursor de mano haciendo clic (el que usa para hacer clic en los enlaces), y que no me permite hacer clic en cualquiera de los enlaces html más! Sus casi como si el clip de película content_mc se ha convertido en un botón!
Sin decir que esto es inaceptable en mi caso si no puede hacer clic en los enlaces html en el contenido del texto original. He buscado en Google un poco y hay que admitir que no he tenido mucha suerte (¿por qué iba yo a publicar aquí y en otros lugares?). Desesperadamente necesitan asistencia algunos con la solución de este. Algunos de los enfoques que he visto en google wouldnt trabajo para mí. Por ejemplo, tener botones invisibles para los enlaces html. Por supuesto que el trabajo wouldnt desde mi texto proviene de un archivo de texto externos sobre los cuales no tengo control.
Cualquier orientación en la dirección correcta será muy apreciada. Y por supuesto, casi no tengo tiempo para solucionar esto. Pero ya que lo que estoy tratando de conseguir es algo tan simple, Im suponiendo que la solución no se llevaría a prohibitivamente largo.
Gracias de antemano a toda la gente amable y servicial que se vierte con sus sugerencias.
- Anonymous
- Bot


- Registrado: 25 Feb 2008
- Mensajes: ?
- Loc: Ozzuland
- Status: Online
Agosto 10th, 2010, 1:33 am
- ScottG
- Proficient


- Registrado: Jul 06, 2010
- Mensajes: 280
- Status: Offline
Lo siento si esto es un poco crudo lo escribí en unos diez minutos. Lo que hice fue cargado en un texto externo que contiene un HTML (A) de la etiqueta para el enlace. entonces hice una máscara de capa e hizo el cuadro de texto de desplazamiento a través de la máscara. Entonces hice una prueba de golpe en el cuadro de texto en contra de la máscara de clip de película y si el cuadro de texto sale de la máscara que restablecer su posición. Desde aquí hago otra prueba de un golpe en la máscara contra las posiciones del ratón y envuelva el desplazamiento si la declaración en un caso falso desde el ratón éxito la prueba. Im publicar el código, así como los archivos que he escrito.
El flash se necesita una caja de varias líneas de texto dinámico i di el mío el nombre de instancia scroll_text y un clip de película de máscara i dio el nombre de instancia mask_mc
Action Script para el flash
my_text.txt
El flash se necesita una caja de varias líneas de texto dinámico i di el mío el nombre de instancia scroll_text y un clip de película de máscara i dio el nombre de instancia mask_mc
Action Script para el flash
ACTIONSCRIPT Código: [ Select ]
// This will be the starting position of the textbox
var starting_ypos:Number;
// This will be has fast the text box will scroll
var scroll_speed:Number = .5;
// Make a load vars object
my_data = new LoadVars();
// Make my on load function
my_data.onLoad = function() {
// Fix the double space issue
var my_text = unescape(this.content).split("\r\n");
my_text = my_text.join("\n");
my_text = my_text.split("\r");
my_text = my_text.join("\n");
// Set the text in the text box
scroll_text.htmlText = my_text;
// Set the autosize
scroll_text.autoSize = true;
// Set the starting_ypos
starting_ypos = scroll_text._y;
};
// Load the external text file
my_data.load("my_text.txt");
// Start the scrolling
this.onEnterFrame = function() {
// Check for hit test with the mask and the mouse
if(!mask_mc.hitTest(_root._xmouse, _root._ymouse)) {
// Check to see if we are in the mask
if(mask_mc.hitTest(scroll_text)) {
// Move the textbox
scroll_text._y -= scroll_speed;
} else {
// Reset the text box
scroll_text._y = starting_ypos;
}
}
}
// Simple stop command
stop();
var starting_ypos:Number;
// This will be has fast the text box will scroll
var scroll_speed:Number = .5;
// Make a load vars object
my_data = new LoadVars();
// Make my on load function
my_data.onLoad = function() {
// Fix the double space issue
var my_text = unescape(this.content).split("\r\n");
my_text = my_text.join("\n");
my_text = my_text.split("\r");
my_text = my_text.join("\n");
// Set the text in the text box
scroll_text.htmlText = my_text;
// Set the autosize
scroll_text.autoSize = true;
// Set the starting_ypos
starting_ypos = scroll_text._y;
};
// Load the external text file
my_data.load("my_text.txt");
// Start the scrolling
this.onEnterFrame = function() {
// Check for hit test with the mask and the mouse
if(!mask_mc.hitTest(_root._xmouse, _root._ymouse)) {
// Check to see if we are in the mask
if(mask_mc.hitTest(scroll_text)) {
// Move the textbox
scroll_text._y -= scroll_speed;
} else {
// Reset the text box
scroll_text._y = starting_ypos;
}
}
}
// Simple stop command
stop();
- // This will be the starting position of the textbox
- var starting_ypos:Number;
- // This will be has fast the text box will scroll
- var scroll_speed:Number = .5;
- // Make a load vars object
- my_data = new LoadVars();
- // Make my on load function
- my_data.onLoad = function() {
- // Fix the double space issue
- var my_text = unescape(this.content).split("\r\n");
- my_text = my_text.join("\n");
- my_text = my_text.split("\r");
- my_text = my_text.join("\n");
- // Set the text in the text box
- scroll_text.htmlText = my_text;
- // Set the autosize
- scroll_text.autoSize = true;
- // Set the starting_ypos
- starting_ypos = scroll_text._y;
- };
- // Load the external text file
- my_data.load("my_text.txt");
- // Start the scrolling
- this.onEnterFrame = function() {
- // Check for hit test with the mask and the mouse
- if(!mask_mc.hitTest(_root._xmouse, _root._ymouse)) {
- // Check to see if we are in the mask
- if(mask_mc.hitTest(scroll_text)) {
- // Move the textbox
- scroll_text._y -= scroll_speed;
- } else {
- // Reset the text box
- scroll_text._y = starting_ypos;
- }
- }
- }
- // Simple stop command
- stop();
my_text.txt
Código: [ Select ]
content=Pagus <a href="123"><b>nulla vel quidne consequat</b></a> facilisi, inhibeo torqueo. Refoveo olim esca esse letatio consequat torqueo. Et exerci luctus capto quadrum, immitto. Accumsan nullus torqueo feugait consectetuer proprius cui appellatio. Molior natu commoveo, os refero tation, quod, plaga inhibeo, ut saepius dolus jus.
Attachments:
- developer_new
- Born


- Registrado: Ago 10, 2010
- Mensajes: 2
- Status: Offline
Muchas gracias por su ScottG ayuda.
De hecho, me hizo algo similar a conseguir alrededor de él.
Lo que hice fue agregar un evento para onMouseMove en la escritura de la acción principal y comprueba si el ratón está dentro de los límites de mi clip de película mask_mc. Mi script ve como este:
Sin embargo, nunca me gustó el uso de onMouseMove para ello. Para mí, parece que llevaría a una onMouseMove superiores más grandes!
La solución que usted envió fue maravilloso porque no utiliza el onMouseMove. Hice un ligero pellizco a la solución para adaptarse a la mía. Me he dado cuenta que el uso de un cuadro de texto con una máscara siempre disminuye la legibilidad del texto en sí (no estoy seguro por qué sin embargo). Así que me convertí mi caja de texto con la carga de archivo externo en un clip de película (como yo lo hice originalmente) ya continuación, establezca la máscara en la EA. Luego utiliza su estrategia de onEnterFrame y HitTest. Fueron eliminados de mi controlador de clip de película también.
Y las rocas resultado!
Gracias de nuevo!
De hecho, me hizo algo similar a conseguir alrededor de él.
Lo que hice fue agregar un evento para onMouseMove en la escritura de la acción principal y comprueba si el ratón está dentro de los límites de mi clip de película mask_mc. Mi script ve como este:
Código: [ Select ]
content_mc.setMask(mask_mc);
content_mc._y = mask_mc._y;
this.onMouseMove = function() {
if ( (_root._xmouse >= mask_mc._x) && (_root._xmouse <= (mask_mc._x + mask_mc._width)) && (_root._ymouse >= mask_mc._y) && (_root._ymouse <= (mask_mc._y + mask_mc._height)) ) {
controller.stop();
} else {
controller.play();
}
};
content_mc._y = mask_mc._y;
this.onMouseMove = function() {
if ( (_root._xmouse >= mask_mc._x) && (_root._xmouse <= (mask_mc._x + mask_mc._width)) && (_root._ymouse >= mask_mc._y) && (_root._ymouse <= (mask_mc._y + mask_mc._height)) ) {
controller.stop();
} else {
controller.play();
}
};
- content_mc.setMask(mask_mc);
- content_mc._y = mask_mc._y;
- this.onMouseMove = function() {
- if ( (_root._xmouse >= mask_mc._x) && (_root._xmouse <= (mask_mc._x + mask_mc._width)) && (_root._ymouse >= mask_mc._y) && (_root._ymouse <= (mask_mc._y + mask_mc._height)) ) {
- controller.stop();
- } else {
- controller.play();
- }
- };
Sin embargo, nunca me gustó el uso de onMouseMove para ello. Para mí, parece que llevaría a una onMouseMove superiores más grandes!
La solución que usted envió fue maravilloso porque no utiliza el onMouseMove. Hice un ligero pellizco a la solución para adaptarse a la mía. Me he dado cuenta que el uso de un cuadro de texto con una máscara siempre disminuye la legibilidad del texto en sí (no estoy seguro por qué sin embargo). Así que me convertí mi caja de texto con la carga de archivo externo en un clip de película (como yo lo hice originalmente) ya continuación, establezca la máscara en la EA. Luego utiliza su estrategia de onEnterFrame y HitTest. Fueron eliminados de mi controlador de clip de película también.
Y las rocas resultado!
Gracias de nuevo!
Página 1 de 1
Para responder a este tema que necesita para ingresar o registrarse. Es gratis.
Publicar Información
- Total de mensajes en este tema: 4 mensajes
- Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 28 invitados
- No puede abrir nuevos temas en este Foro
- No puede responder a temas en este Foro
- No puede editar sus mensajes en este Foro
- No puede borrar sus mensajes en este Foro
- No puede enviar adjuntos en este Foro
