Tag: javascript

  • [翻译]1K 玫瑰花

    这篇文章介绍了使用 canvas 的绘图功能绘制一个 3D 玫瑰。很有特色,随翻译于此。
    在 Valentine’s Day 即将来临之际,希望能给诸位死 coder 一点点好运气……

    原文在此:http://www.romancortes.com/blog/1k-rose/

    —————-翻译分隔线—————-

    我参加了 js1k 组织的关于“爱”的第四次主题活动。提交了一个静态图片,由程序生成的 3D 玫瑰花。你可以在这里找到它

    它是用蒙特卡洛方法显式分段采样生成 3D 曲面。我将在这个文章中逐步解释所有的要点。
    (more…)

  • jquery 版的 ie 下 png 图片透明的 js 函数

    1 function correctPNG(objTag) {

    2 // 为 IE 时生效

    3 if(jQuery.browser.msie) {

    4 $(objTag).each(function(){

    5 var src = $(this).attr(“src”);

    6 // src 不为空,且为 png 格式图片

    7 if (src != undefined && src.substring(src.length – 3, src.length).toLowerCase() == “png”) {

    8 // 取出图片原有属性

    9 var imgId = $(this).attr(“id”);

    10 imgId = imgId == undefined ? : imgId;

    11 var imgClass = $(this).attr(“class”);

    12 imgClass = imgClass == undefined ? : imgClass;

    13 var imgTitle = $(this).attr(“title”);

    14 imgTitle = imgTitle == undefined ? : imgTitle;

    15 var imgStyle = $(this).attr(“style”);

    16 imgStyle = imgStyle == undefined ? : imgStyle;

    17 imgStyle = “display:inline-block;” + imgStyle;

    18 var imgAlign = $(this).attr(“align”);

    19 // 图片对齐属性转为样式

    20 switch(imgAlign) {

    21 case “left”:

    22 imgStyle = “float:left;” + imgStyle;

    23 break;

    24 case “right”:

    25 imgStyle = “float:right;” + imgStyle;

    26 break;

    27 }

    28 // 父标签为 a 时,应用鼠标样式为手指

    29 if ($(this).parent().get(0).tagName.toLowerCase() == “a”) {

    30 imgStyle = “cursor:hand;” + imgStyle;

    31 }

    32 // 设置宽高

    33 imgStyle = “width:” + $(this).width() + “px; height:” + $(this).height() + “px;” + imgStyle;

    34 // 设置 IE 的 PNG 透明滤镜

    35 imgStyle = “filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\” + src + \”,sizingMethod=\”scale\”);” + imgStyle;

    36 // 替换 img 标签为 span

    37 $(this).replaceWith(“<span id=’” + imgId + “‘ class=’” + imgClass + “‘ title=’” + imgTitle + “‘ style=’” + imgStyle + “‘></span>”);

    38 }

    39 });

    40 }

    41 }