如何让flash调用页面中的Javascript方法

最近在工作中遇到两次需要用actionscript和javascript交互的项目,虽然交互的效果很简单,但为了以后碰到此类情况时不再翻箱倒柜的去搜资料,还是做做笔记吧 ^0^

实现效果:点击flash中的按钮,然后在页面中弹出视频播放层

Flash中的代码:

import flash.external.ExternalInterface;    //这是实现as和js交互的库文件
but1.addEventListener(MouseEvent.CLICK,video);    //"but1"是flash中需要交互的按钮,或者影片剪辑的实例名称
function video(event:MouseEvent):void{
	ExternalInterface.call("videoShow");    //"videoShow"是页面中需要调用的js方法
}

页面中Javascript的方法比较简单,定义方法就行

Javascript代码:

function videoShow(){
	writeVideo.init({type:'video',link:'http://img1.tiancitycdn.com/tf/event/gamescreen/flv/g_1.flv'});
}

查看Demo >>

只是一个简单的flash调用js方法效果,还可以传入参数……

Opera/Chrome/Safari/Firefox/IE 各种浏览器的CSS Hack方法整理

浏览器兼容性一直是做前端最头疼的事,一般来说最常用应该是IE6以及IE7的CSS Hack,但是偶尔也会遇到一些情况,迫使你去兼容各个主流浏览器,以下是兼容各种浏览器的CSS Hack

CSS样式

body{
       background:green;                                      /* firefox 中的样式 */
       background:gray\0;                                     /* IE8、Opera 中的样式 */
       [background:#1e1e1e; background:pink;       /* Chrome、Safari 中的样式 */
       *background:red;                                       /* IE7 中的样式 */
       _background:yellow;                                   /* IE6 中的样式 */
}

温馨提示:

Chrome浏览器和Safari浏览器中的CSS Hack,下面的这段样式是一个整体,顺序不能变
       [background:#1e1e1e; background:pink;

屏蔽鼠标右键以及F5刷新的方法(兼容IE以及Firefox)

最近做个项目,由于页面是要在游戏客户端中显示,所以需要用JS屏蔽掉鼠标右键以及F5刷新。也因此翻了翻书,恶补了下,吼吼

鼠标Button属性在不同浏览器中的键值

button的值 IE中的按键 Firefox、IE9中的按键
0 未按下按键 左键
1 左键 中键(滚轮键)
2 右键 右键
3 同时按下左、右键 不支持组合键,未按下任意键时button值为undefined
4 中键(滚轮键)
5 同时按下左、中键
6 同时按下右、中键
6 同时按下左、中、右键

继续阅读 >

IE6,IE7不显示JS动态生成的图片问题

哎,这几天一直在解决的问题……

本来想做个带有翻页功能的视频播放页面,读取json文件,然后进行逐页显示。以为很简单,但是在IE6和IE7下发现翻页后的图片都不显示。

我的代码是这样写的:

HTML代码

<a title="第1页" rel="0" href="javascript:;">1</a>
<a title="第2页" rel="1" href="javascript:;">2</a>
javascript代码

pList.onclick=function(e){
     e=e||window.event;
     var target=e.target||e.srcElement;
     if(target.nodeName=="A"){
          动态写入图片的代码......
     }
}

后来到处查找,才了解原来是 “return false” 的原因。因为a链接如果不return false; IE6会认为页面刷新或者重定向了,直接终止之后所有的连接。

所以又修改了javascript:

javascript代码

pList.onclick=function(e){
     e=e||window.event;
     var target=e.target||e.srcElement;
     if(target.nodeName=="A"){
          动态写入图片的代码......
          return false;
     }
}

这样问题就解决了……

PNG图片在IE浏览器中变形问题

今天遇到的问题。

我都是使用 JQ插件‘pngfix’ 解决IE6下的PNG透明问题。但是今天发现在第一次打开页面后,PNG图片都会变形,必须要刷新一次才能显示正常。

最后还是同事找到了原因,原来必须要给那个PNG图片设置。T_T

于是我上网查了查,发现在某篇介绍pngfix插件的页面中有这么一句:You must have height and width attributes specified.

哎….我去果奔了……

IE6中overflow失效?

又是IE6!最近在自己博客中发现了这个问题。在IE6下给元素设置 overflow: auto; 属性后不起作用。然后我随便试了试。

新建HTML文件后,写下如下代码:

<div style="width:400px;">
 <div style="overflow:auto;">
  <pre>
   <p>第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字</p>
   <p>第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字</p>
  </pre>
 </div>
</div>

会发现在IE6下是不产生横向滚动条的。即使是设置IE专用属性: overflow-x: auto; 也不行。容器的宽度还是会随着内容而变化。

于是想到是宽度问题,所以我给第二层 div 添加了 width:100%; 属性。

<div style="width:400px;">
 <div style="width:100%; overflow:auto;">
  <pre>
   <p>第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字,第一行内容文字</p>
   <p>第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字,第二行内容文字</p>
  </pre>
 </div>
</div>

吼吼,一切就都正常了…

莫非在IE6下只有对于设置了宽度的元素 overflow:auto; 才能起到作用?望高人指教,^o^

开场白

本小博正式开张了,欢迎客官前来围观,^o^

很抱歉现在才写开场白,朋友下手太快了,等我反应过来,已经这样鸟,鄙视之,哇卡卡

恩,我和我的朋友会在这里记录下自己的学习体会以及发现的好的资源,还会扯扯家事,吼吼……

我们会努力的去充实网站内容,争取为每一位读者提供到帮助,谢谢你们的支持!

好吧,就这样了,不知道另两位大侠有没有什么要说的……..呃!?他们没有……. =,=

加油加气加饭……

dwr bean 配置使用

使用dwr向服务器传入BEAN进行操作:

xml配置文件:

<create creator="spring" javascript="exam">
<param name="beanName" value="examAction" />
<include method="test"/>
</create>
<convert converter="bean" match="com.example.ExamBean">
<param name="include" value="p1,p2"/>    //bean中所包含的属性
</convert>

jsp文件:

<script type="text/javascript" src="<%=basePath%>dwr/interface/exam.js" defer="defer"></script>
<script type="text/javascript" src="<%=basePath%>dwr/engine.js" defer="defer"></script>
<script type="text/javascript" defer="defer">
function test(){
var p1="";
var p2="";
var examBean = {p1:p1,p2:p2};
exam.test(examBean,callbacktestAjax);
}
</script>

作为IT男,小冷了下

IT 男在办公大楼的门口抽着烟,

一个妇女路过他身边,

并对他说,“你知道不知道这个东西会危害你的健康?

我是说,你有没有注意到香烟盒上的那个警告(Warning)?”

IT男说:“没事儿,我是一个程序员”。

那妇女说,“这又怎样?”

“我们从来不关心Warning,只关心Error”。

win xp Django安装

前提:首先保证电脑上已经安装python,我安装的是python2.5

1、下载Django。

2、cmd控制台cd到Django目录,这里是D:\download\Django,可以看到这个目录下有setup.py文件

3、在cmd中键入命令:

python setup.py install

回车,Django会自动安装。

4、安装完毕后,将D:\DownLoads\Django\django\bin加入系统的path中,如果不进行这一步,django-admin等命令不能运行

5、在cmd中:

键入:python
  import django
  django.VERSION
  (1,0,'alpha')

我下载的是Django1.0 alpha版本,所以这里显示(1, 0, ‘alpha’)

如果打印出以上信息,说明Django安装成功。

6、在cmd窗口中输入

django-admin.py startproject mysite

回车,则django会在当前目录下创建mysite的工程

工程中包含:

    __init__.py

    manage.py

    settings.py

    urls.py

7、cd 到mysite目录下,运行

python manage.py runserver

命令行窗口显示:

Validating models...
0 errors found

Django version 1.0-alpha-SVN-unknown, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
[24/Jul/2008 20:22:54] "GET / HTTP/1.1" 200 2053

8、打开浏览器输入http://127.0.0.1:8000,会看到It worked!等字样。到此Django已经安装成功.