当前位置:  编程技术>WEB前端
本页文章导读:
    ▪VS发布Web时自动调用YUICompressor批量压缩JS、CSS      在Visual Studio中通过修改发布配置文件,可以在发布Web时自动调用YUICompressor批量压缩项目中JS和CSS。这种方式的优点,一是不需要在项目的js、css文件夹中单独建立debug子文件夹来存放未经压缩.........
    ▪js定时器 timer      function timer(step) { var startTime = new Date().getTime(); var endTime = new Date().getTime(); while (endTime - startTime < step) { endTime = new Date().getTime(); }//出自http://www.cnblogs.com/ahjesus 尊重作者辛苦劳动.........
    ▪js动态加载脚本之同步加载      首先在一个固定文件夹下创建一个package.js,打开后在里面写一个方法functionOne,代码如下:function functionOne(){ alert("成功加载");}  后面的html文件都创建在同一个目录下。方法一:直接docume.........

[1]VS发布Web时自动调用YUICompressor批量压缩JS、CSS
    来源:    发布时间: 2013-11-06

在Visual Studio中通过修改发布配置文件,可以在发布Web时自动调用YUICompressor批量压缩项目中JS和CSS。这种方式的优点,一是不需要在项目的js、css文件夹中单独建立debug子文件夹来存放未经压缩的文件,二是使用debug模式发布时不会进行压缩方便调试。具体方法如下:

1 安装JRE,下载YUICompressor,并解压(如:E:\工具\yuicompressor)

2 新建Compressor.bat文件内容为:

@echo off
if "%1" == "" goto exit
pushd "%1"
echo 正在压缩Css文件
for /r %%i in (*.css) do call "java.exe" -jar E:\工具\yuicompressor\yuicompressor.jar -o %%i %%i
echo 正在压缩js文件
for /r %%i in (*.js) do call "java.exe" -jar E:\工具\yuicompressor\yuicompressor.jar -o %%i %%i
:exit
exit


3 修改项目的发布配置文件, 项目的发布配置文件名为 <profilename>.pubxml,位于项目文件夹下的properties\PublishProfiles文件夹

增加下面的内容:

<Target Name="YUICompressor" AfterTargets="CopyAllFilesToSingleFolderForPackage" Condition="'$(ConfigurationName)'=='Release'">
<Message Text="调用YUICompressor压缩CSS、JS" Importance="high" />
<Exec Command="call E:\工具\Compressor.bat $(ProjectDir)obj\$(ConfigurationName)\Package\" />
</Target>

注: E:\工具\Compressor.bat路径根据需要替换。

完成上面的工作后在“解决方案资源管理器”中右击要发布的项目点击“发布”后就可以在项目发布文件夹中看到已经压缩过的CSS、JS了

本文链接


    
[2]js定时器 timer
    来源:    发布时间: 2013-11-06
function timer(step) {
var startTime = new Date().getTime();
var endTime = new Date().getTime();
while (endTime - startTime < step) {
endTime = new Date().getTime();
}
//出自http://www.cnblogs.com/ahjesus 尊重作者辛苦劳动成果,转载请注明出处,谢谢!
return;
}

 

本文链接


    
[3]js动态加载脚本之同步加载
    来源:    发布时间: 2013-11-06

首先在一个固定文件夹下创建一个package.js,打开后在里面写一个方法functionOne,代码如下:

function functionOne(){
alert("成功加载");
}

  后面的html文件都创建在同一个目录下。

方法一:直接document.write

  在同一个文件夹下面创建一个function1.html,代码如下:

<html>
<head>
<title></title>
<script type="text/javascript">
function init()
{
//加载js脚本
document.write("<script src='/blog_article/package.js'><\/script>");
//加载一个按钮
document.write("<input type=\"button\" value=\"测试运行效果\" onclick=\"operation()\"\/>");
//如果马上使用会找不到,因为还没有加载进来,此处会报错
functionOne();
}
function operation()
{
//可以运行,显示“成功加载”
functionOne();
}
</script>
</head>
<body>
<input type="button" value="初始化加载" onclick="init()"/>
</body>
</html>

  通过document.write的方式可以往页面写入脚本,如代码所示,点击按钮“初始化加载”后可以加载package.js文件,但是立即运行里面的方法functionOne会找不到此方法,报告错误,而点击第二个按钮(通过document.write动态创建的“测试运行效果”)发现可以执行,因为这种方式是异步加载(一边继续执行后面的代码,一边额外开一个线程执行需要加载的脚本),并且document.write会重写界面,明显不实用。

方法二:动态改变已有script的src属性

  在同一个文件夹下面创建一个function2.html,代码如下:

<html>
<head>
<title></title>
<script type="text/javascript" id="yy" src=""></script>
<script type="text/javascript">
function init()
{
yy.src = "package.js";
//如果马上使用会找不到,因为还没有加载进来,此处会报错
functionOne();
}
function operation()
{
//可以运行,显示“成功加载”
functionOne();
}
</script>
</head>
<body>
<input type="button" value="测试按钮" onclick="init()"/>
<input type="button" value="测试运行效果" onclick="operation()"/>
</body>
</html>

  此种方法的好处在于不会改变界面元素,不至于重写界面元素,但是同样是异步加载,会有同样的问题。

方法三:动态创建script元素(异步)

  在同一个文件夹下面创建一个function3.html,代码如下:

<html>
<head>
    
最新技术文章:
▪css white-space:nowrap属性用法(可以强制文字不...
▪IE里button设置border:none属性无效解决方法
▪border:none与border:0使用区别
▪html清除浮动的6种方法示例
▪三个不常见的 HTML5 实用新特性简介
▪css代码优化的12个技巧
▪低版本IE正常运行HTML5+CSS3网站的3种解决方案
▪CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chr...
▪ie6,ie7,ie8完美支持position:fixed的终极解决方案
▪小技巧处理div内容溢出
▪html小技巧之td,div标签里内容不换行
▪纯CSS实现鼠标放上去改变文字内容
▪li中插入img图片间有空隙的解决方案
▪CSS3中Transition属性详解以及示例分享
▪父div高度不能自适应子div高度的解决方案
▪告别AJAX实现无刷新提交表单
▪从零学CSS系列之文本属性
▪HTML 标签
▪CSS3+Js实现响应式导航条
▪CSS3实例分享之多重背景的实现(Multiple background...
▪用css截取字符的几种方法详解(css排版隐藏溢...
▪页面遮罩层,并且阻止页面body滚动。bootstrap...
▪CSS可以做的几个令你叹为观止的实例分享
▪详细分析css float 属性以及position:absolute 的区...
▪IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解...
▪CSS小例子(只显示下划线的文本框,像文字一...
▪可以给img元素设置背景图
▪不通过JavaScript实现的自动滚动视差效果
▪div+CSS 兼容小摘
▪IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解... iis7站长之家
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3