نمایش نتایج 1 تا 4 از 4

نام تاپیک: ایجاد پس زمینه ی Gradient به وسیله جاوااسکریپت

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر دائمی آواتار eAmin
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    Node.js
    پست
    447

    ایجاد پس زمینه ی Gradient به وسیله جاوااسکریپت

    سلام.

    من دیروز یه تابع نوشتم برای اینکه یه پس زمینه ی گرادینت درست کنه، البته با جاوااسکریپت، خوبیش هم اینه که دیگه نیاز به ساختن عکس توسط نرم افزارهای گرافیکی رو نداره.
    این تابع cross browser هست و با تمامی مرورگرهای معروف فعلی همخوانی داره.

    تابعی رو که نوشتم کدش زیر هست:

    /*
    * Name : eGradient.js
    * Desc : create gradient background with javascript, eGradient is cross browser
    * Copyright (c) 2008 eAmin ( eAmin.js [at] gmail [dot] com )
    * Build Date : 10/25/2008
    */

    function eGradient(elm) {
    var options = {
    startPoint:'',
    endPoint :''
    };

    var elm = document.getElementById(elm);

    for (var i in options) {
    if (!options[i]) {
    options[i] = arguments[1][i];
    }
    }

    if (!!window.ActiveXObject) {
    elm.style.filter = "progid:DXImageTransform.Microsoft.Gradient(startC olorStr="+options.startPoint+",endColorStr="+optio ns.endPoint+",gradientType=0)";
    } else {
    var canvas = document.createElement("canvas"), ctx = canvas.getContext("2d");
    canvas.style.width = parseInt(elm.style["width"]);
    canvas.style.height = parseInt(elm.style["height"]);
    elm.appendChild(canvas);
    var linergradient = ctx.createLinearGradient(0, 0, 0, parseInt(canvas.height));
    linergradient.addColorStop(0, options.startPoint);
    linergradient.addColorStop(1, options.endPoint);
    ctx.fillStyle = linergradient;
    ctx.fillRect(0, 0, parseInt(canvas.width), parseInt(canvas.height));
    }
    }
    یه توضیح هم در رابطه با طرز استفاده از این تابع:

    آرگومان elm: این آرگومان وظیفه داره تا اون المنتی که شما قصد ایجاد پس زمینه ی گرادینت رو دارید، id المنت مربوطه رو بگیره.

    آبجکتهای startPoint و endPoint:
    startPoint: رنگ شروع کننده.
    endPoint: رنگ پایان دهنده.

    اینم یه Sample:
    کد HTML:
    <html>
    <head>
    <script type="text/javascript" src="gradient.js"></script>
    <script type="text/javascript">
    
    window.onload = function() {
        eGradient('egrad', {
            startPoint: '#ffffff',
            endPoint: '#000000'
        });
    };
    
    </script>
    
    </head>
    <body>
    
    <div id="egrad" style="width:100px; height: 100px;"></div>
    
    </body>
    </html>
    سوالی داشتید در خدمتم.
    آخرین ویرایش به وسیله eAmin : شنبه 23 خرداد 1388 در 13:20 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •