Tampilkan postingan dengan label Accecoris blogger. Tampilkan semua postingan
Tampilkan postingan dengan label Accecoris blogger. Tampilkan semua postingan

Rabu, 07 September 2011

Generating Files dengan JavaScript

Ketika membangun sebuah aplikasi web, Anda seringkali harus memberikan pengguna kemampuan untuk men-download bagian dari data sebagai file. Ini bisa menjadi cadangan pengaturan konfigurasi, laporan, atau bagian lain dari informasi yang dihasilkan secara dinamis.

Solusi yang biasa untuk masalah ini akan memiliki script ekspor khusus yang memilih dari database dan membangun file yang Anda butuhkan. Namun, seperti kita akan membuktikan di tutorial singkat ini, ada cara lain.

Kami akan membuat sebuah plugin jQuery yang, dikombinasikan dengan script php sederhana, dapat menghasilkan setiap jenis file tekstual, dan membuatnya tersedia untuk di-download. Anda akan memulai download dari front end Anda JavaScript dengan hanya menyediakan isi file, dan meninggalkan sisanya untuk plugin.

HTML

Kita akan mulai dengan meletakkan sebuah halaman HTML sederhana dengan textarea dan tombol download, sehingga kita dapat menunjukkan plugin di tempat kerja.

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />

<title>Generating files with JS &amp; PHP | Tutorialzine Demo</title>

<!-- Our CSS stylesheet file -->
<link rel="stylesheet" href="assets/css/styles.css" />

<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>

<body>

<header>
<h1>Generating Files with JavaScript</h1>
<h2><a href="http://tutorialzine.com/2011/05/generating-files-javascript-php/">&laquo; Read and download on Tutorialzine</a></h2>
</header>

<form action="./" method="post">
<textarea></textarea>
<a href="#" class="blueButton" id="download">Download</a>
</form>

<footer>Another cool example: <a href="#" id="downloadPage">download this page.</a> <b>To download the source code, visit <a href="http://tutorialzine.com/2011/05/generating-files-javascript-php/">Tutorialzine.com</a></b></footer>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
<script src="assets/js/jquery.generateFile.js"></script>
<script src="assets/js/script.js"></script>

</body>
</html>


Halaman menggunakan DOCTYPE HTML5, seperti kita menggunakan beberapa tag yang didefinisikan oleh standar. Untuk itu untuk bekerja di IE, kita juga perlu menyertakan script HTML5 memungkinkan di bagian kepala.

Sebelum tag penutup tubuh, kita menambahkan perpustakaan jQuery, plugin generateFile kita akan menulis dalam sekejap, dan file script.js yang mendengarkan acara dan memicu download file.

download.php

if(empty($_POST['filename']) || empty($_POST['content'])){
exit;
}

// Sanitizing the filename:
$filename = preg_replace('/[^a-z0-9-_.]/i','',$_POST['filename']);

// Outputting headers:
header("Cache-Control: ");
header("Content-type: text/plain");
header('Content-Disposition: attachment; filename="'.$filename.'"');

echo $_POST['content'];


Apa ini script PHP tidak hanya menambahkan beberapa header di atas pernyataan echo. Plugin kita sedang membangun harus lulus dua parameter bersama dengan permintaan POST: nama file dan konten. Script akan mencetak isi file, sedangkan tiga pengaturan header yang akan memaksa kotak file download muncul (bukan dari browser Anda hanya membukanya).

Untuk menggunakan plugin Anda perlu untuk meng-upload file ini di suatu tempat di server Anda dan lulus URL-nya ke plugin kita akan coding berikutnya.


jQuery

Seperti yang Anda lihat di bagian sebelumnya, plugin kami telah mengeluarkan permintaan POST untuk download.php. Pilihan alami untuk membuat permintaan akan dengan menggunakan AJAX. Namun, ada kelemahan untuk menggunakan metode ini - tidak memicu dialog download file muncul.

Jadi apa yang kita butuhkan adalah sebuah sekolah sedikit lebih lama. Kami akan secara dinamis menciptakan iframe tersembunyi dan menulis suatu bentuk untuk itu, yang kemudian kita akan menyerahkan melalui POST. Atribut aksi titik formulir untuk download.php, sehingga dialog file download akan muncul, persis seperti yang kita butuhkan untuk.

Sekarang mari kita meletakkan kode jQuery yang melakukan hal ini:

assets/jquery.generateFile.js

(function($){

// Creating a jQuery plugin:

$.generateFile = function(options){

options = options || {};

if(!options.script || !options.filename || !options.content){
throw new Error("Please enter all the required config options!");
}

// Creating a 1 by 1 px invisible iframe:

var iframe = $('<iframe>',{
width:1,
height:1,
frameborder:0,
css:{
display:'none'
}
}).appendTo('body');

var formHTML = '<form action="" method="post">'+
'<input type="hidden" name="filename" />'+
'<input type="hidden" name="content" />'+
'</form>';

// Giving IE a chance to build the DOM in
// the iframe with a short timeout:

setTimeout(function(){

// The body element of the iframe document:

var body = (iframe.prop('contentDocument') !== undefined) ?
iframe.prop('contentDocument').body :
iframe.prop('document').body; // IE

body = $(body);

// Adding the form to the body:
body.html(formHTML);

var form = body.find('form');

form.attr('action',options.script);
form.find('input[name=filename]').val(options.filename);
form.find('input[name=content]').val(options.content);

// Submitting the form to download.php. This will
// cause the file download dialog box to appear.

form.submit();
},50);
};

})(jQuery);


Dalam waktu kurang dari 50 baris (dengan komentar dilucuti) fragmen di atas tidak apa yang kita butuhkan. Ini menciptakan iframe tersembunyi dengan bentuk di dalamnya.

Perhatikan fungsi setTimeout () . Tanpa itu kita tidak dapat mengakses elemen dokumen dari iframe di Internet Explorer. Dengan cara ini, kita memberikan waktu untuk membangun DOM dan membuatnya tersedia untuk kita.

Dan di sini adalah bagaimana menggunakan plugin ini:

assets/script.js

$(document).ready(function(){

$('#download').click(function(e){

$.generateFile({
filename : 'export.txt',
content : $('textarea').val(),
script : 'download.php'
});

e.preventDefault();
});

$('#downloadPage').click(function(e){

$.generateFile({
filename : 'page.html',
content : $('html').html(),
script : 'download.php'
});

e.preventDefault();
});

});


Ketika memanggil $. GenerateFile, Anda harus lulus nama file (harus sesuatu yang deskriptif), isi teks, dan jalan menuju download.php. Seperti yang dapat Anda lihat pada contoh di atas, kita bisa menghasilkan berbagai jenis file, asalkan adalah teks.

Dengan plugin yang sederhana ini selesai!

kesimpulan


Anda dapat menggunakan kode ini untuk menambahkan fitur ekspor ke aplikasi web atau meningkatkan area tertentu dari situs Anda dengan fungsi download. Hal ini bahkan mungkin untuk menghasilkan file doc dan spreadsheet jika Anda mengikuti format XML Microsoft Office. Bagian yang terbaik adalah bahwa semuanya dilakukan dengan JavaScript dan Anda dapat dengan mudah menggabungkan berbagai sumber data.

Demo Download

Read more

Kamis, 07 Juli 2011

Membuat Portofolio HTML5 dengan jQuery dan plugin Quicksand

Dalam tutorial ini kita akan membuat sebuah portofolio HTML5 yang indah didukung oleh jQuery dan plugin Quicksand. Anda dapat menggunakannya untuk memamerkan karya terbaru Anda dan sepenuhnya disesuaikan, sehingga Anda bisa memperluas berpotensi untuk melakukan lebih banyak.


HTML

Langkah pertama adalah menuliskan markup dari sebuah dokumen HTML5 baru. Pada bagian kepala, kami akan menyertakan stylesheet untuk halaman. Perpustakaan jQuery, plugin Quicksand dan script.js kami akan pergi tepat sebelum tag penutup tubuh:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />

<title>Making a Beautiful HTML5 Portfolio | Tutorialzine Demo</title>

<!-- Our CSS stylesheet file -->
<link rel="stylesheet" href="assets/css/styles.css" />

<!-- Enabling HTML5 tags for older IE browsers -->
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>

<body>

<header>
<h1>My Portfolio</h1>
</header>

<nav id="filter">
<!-- The menu items will go here (generated by jQuery) -->
</nav>

<section id="container">
<ul id="stage">
<!-- Your portfolio items go here -->
</ul>
</section>

<footer>
</footer>

<!-- Including jQuery, the Quicksand plugin, and our own script.js -->

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script src="assets/js/jquery.quicksand.js"></script>
<script src="assets/js/script.js"></script>

</body>
</html>


Di dalam tubuh, ada sejumlah elemen HTML5 baru. Header memegang pos h1 kami (yang bergaya sebagai logo), elemen bagian memegang daftar unordered dengan item portofolio (daftar lebih ditambahkan oleh jQuery, karena Anda akan lihat nanti), dan elemen nav, ditata sebagai hijau bar, bertindak sebagai filter konten.

Tahap # daftar unordered item memegang portfolio kami. Anda dapat melihat apa barang-barang ini akan terlihat seperti di bawah ini. Masing-masing memiliki atribut HTML5 data, yang mendefinisikan serangkaian dipisahkan dengan koma tag. Kemudian, ketika kita menggunakan jQuery untuk loop melalui daftar ini, kita akan merekam tag dan membuat kategori yang bisa dipilih dari bar hijau.

<li data-tags="Print Design">
<img src="assets/img/shots/1.jpg" />
</li>

<li data-tags="Logo Design,Print Design">
<img src="assets/img/shots/2.jpg" />
</li>

<li data-tags="Web Design,Logo Design">
<img src="assets/img/shots/3.jpg" />
</li>


Anda dapat menaruh apa pun yang Anda inginkan dalam item li dan menyesuaikan portofolio lebih lanjut. Plugin Quicksand akan menangani transisi animasi daftar ini, jadi anda bebas untuk bereksperimen.
HTML5 indah Portofolio dengan jQuery

HTML5 indah Portofolio dengan jQuery


jQuery

Apa plugin Quicksand tidak, adalah membandingkan dua daftar unordered item, menemukan LIS cocok di dalamnya, dan menghidupkan mereka ke posisi baru mereka. Script jQuery kita akan menulis bagian ini, akan loop melalui item portofolio dalam daftar tahap #, dan membuat daftar (tersembunyi) baru unordered untuk setiap tag yang ditemukan. Ini juga akan membuat pilihan menu baru, yang akan memicu transisi pasir apung antara dua daftar.

Pertama kita perlu untuk mendengarkan acara siap (titik awal dalam pemuatan halaman di mana kita dapat mengakses DOM), dan loop melalui semua item li mendeteksi tag terkait.

script.js – Part 1

$(document).ready(function(){

var items = $('#stage li'),
itemsByTags = {};

// Looping though all the li items:

items.each(function(i){
var elem = $(this),
tags = elem.data('tags').split(',');

// Adding a data-id attribute. Required by the Quicksand plugin:
elem.attr('data-id',i);

$.each(tags,function(key,value){

// Removing extra whitespace:
value = $.trim(value);

if(!(value in itemsByTags)){
// Create an empty array to hold this item:
itemsByTags[value] = [];
}

// Each item is added to one array per tag:
itemsByTags[value].push(elem);
});

});

Setiap tag ditambahkan ke objek itemsByTags sebagai array. Ini berarti bahwa itemsByTags ['Desain Web'] akan mengadakan sebuah array dengan semua item yang memiliki Web Design sebagai salah satu tag mereka. Kami akan menggunakan objek ini untuk membuat daftar unordered, tersembunyi di halaman untuk pasir hisap.

Ini akan menjadi yang terbaik untuk menciptakan sebuah fungsi pembantu yang akan menanganinya untuk kita:

script.js – Part 2

function createList(text,items){

// This is a helper function that takes the
// text of a menu button and array of li items

// Creating an empty unordered list:
var ul = $('<ul>',{'class':'hidden'});

$.each(items,function(){
// Creating a copy of each li item
// and adding it to the list:

$(this).clone().appendTo(ul);
});

ul.appendTo('#container');

// Creating a menu item. The unordered list is added
// as a data parameter (available via .data('list')):

var a = $('<a>',{
html: text,
href:'#',
data: {list:ul}
}).appendTo('#filter');
}


Fungsi ini mengambil nama dari grup dan sebuah array dengan item LI sebagai parameter. Kemudian klon item ini ke UL baru dan menambahkan link di bar hijau.

Sekarang kita harus loop melalui semua kelompok dan memanggil fungsi di atas, dan juga mendengarkan untuk klik pada item menu.

script.js – Part 3

// Creating the "Everything" option in the menu:
createList('Everything',items);

// Looping though the arrays in itemsByTags:
$.each(itemsByTags,function(k,v){
createList(k,v);
});

$('#filter a').live('click',function(e){
var link = $(this);

link.addClass('active').siblings().removeClass('active');

// Using the Quicksand plugin to animate the li items.
// It uses data('list') defined by our createList function:

$('#stage').quicksand(link.data('list').find('li'));
e.preventDefault();
});

// Selecting the first menu item by default:
$('#filter a:first').click();


Bagus! Sekarang kita memiliki segalanya di tempat kita bisa melanjutkan ke gaya halaman.

CSS


Styling halaman itu sendiri tidak yang menarik (Anda dapat melihat CSS untuk ini dalam aset / css / styles.css). Namun apa yang lebih menarik adalah bar berwarna hijau (atau bar # filter), yang menggunakan: sebelum /: setelah elemen pseudo untuk menambahkan sudut menarik di sisi bar. Seperti diposisikan benar-benar, mereka juga tumbuh bersama dengan bar.


styles.css



#filter {
background: url("../img/bar.png") repeat-x 0 -94px;
display: block;
height: 39px;
margin: 55px auto;
position: relative;
width: 600px;
text-align:center;

-moz-box-shadow:0 4px 4px #000;
-webkit-box-shadow:0 4px 4px #000;
box-shadow:0 4px 4px #000;
}

#filter:before, #filter:after {
background: url("../img/bar.png") no-repeat;
height: 43px;
position: absolute;
top: 0;
width: 78px;
content: '';

-moz-box-shadow:0 2px 0 rgba(0,0,0,0.4);
-webkit-box-shadow:0 2px 0 rgba(0,0,0,0.4);
box-shadow:0 2px 0 rgba(0,0,0,0.4);
}

#filter:before {
background-position: 0 -47px;
left: -78px;
}

#filter:after {
background-position: 0 0;
right: -78px;
}

#filter a{
color: #FFFFFF;
display: inline-block;
height: 39px;
line-height: 37px;
padding: 0 15px;
text-shadow:1px 1px 1px #315218;
}

#filter a:hover{
text-decoration:none;
}

#filter a.active{
background: url("../img/bar.png") repeat-x 0 -138px;
box-shadow: 1px 0 0 rgba(255, 255, 255, 0.2),
-1px 0 0 rgba(255, 255, 255, 0.2),
1px 0 1px rgba(0,0,0,0.2) inset,
-1px 0 1px rgba(0,0,0,0.2) inset;
}


Dengan portofolio kami yang indah, tutorial HTML5 ini telah lengkap!

Kesimpulan

Anda dapat menggunakan template ini untuk mempresentasikan hasil kerja Anda. Hal terbaik tentang itu adalah bahwa itu benar-benar mudah untuk menyesuaikan. Anda hanya perlu mengubah isi dari item LI awal daftar stage #, dan menentukan beberapa tag baru - script akan melakukan sisanya. Jika pengunjung tidak memiliki JavaScript diaktifkan, mereka masih akan melihat semua portofolio Anda item, yang juga baik untuk tujuan SEO.

Download kodenya :Download - Membuat Portofolio HTML5 dengan jQuery dan plugin Quicksand

Contoh lihat disini :Demo - Membuat Portofolio HTML5 dengan jQuery dan plugin Quicksand
Read more

Rabu, 25 Mei 2011

Efek Menghilangkan Elemen Seperti Div

Ok selanjutnya saya akan menunjukkan kepada anda bagaimana untuk membuat sesuatu seperti elemen div atau elemen yang lainnya menghilang bila tombol gambar atau link delete diklik, penasaran berikut ini demonya silahkan klik tombol delete / tanda silang dibawah:





Contoh heading / Judul

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi malesuada, ante at feugiat tincidunt, enim massa gravida metus, commodo lacinia massa diam vel eros. Proin eget urna. Nunc fringilla neque vitae odio. Vivamus vitae ligula.


delete



Contoh heading / Judul

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi malesuada, ante at feugiat tincidunt, enim massa gravida metus, commodo lacinia massa diam vel eros. Proin eget urna. Nunc fringilla neque vitae odio. Vivamus vitae ligula.



delete


berikut saya perlihatkan codingnya :



$(".panel .delete").click(function(){
$(this).parents(".panel").animate({ opacity: 'hide' }, "slow");
});


Integrasi coding diatas dengan css dan html adalah sebagai berikut:



<script type="text/javascript" src="NamaFileJquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".panel .delete").click(function(){
$(this).parents(".panel").animate({ opacity: 'hide' }, "slow");
});
});
</script>


<style type="text/css">
.panel {
background: #edf5e1;
padding: 10px 20px 10px;
margin:0 auto;
width: 450px;
position: relative;
border-top: solid 2px #c4df9b;
}
.panel .delete {
position: absolute;
top: 10px;
right: 10px;
cursor: pointer;
}
.panel h5{
background: #edf5e1;
padding: 10px 20px 10px;
position: relative;
border-top: solid 2px #c4df9b;
}
.panel .delete {
position: absolute;
top: 10px;
right: 10px;
cursor: pointer;
}
</style>

<div class="panel">
<h5>Contoh heading / Judul</h5>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi malesuada,
ante at feugiat tincidunt, enim massa gravida metus,
commodo lacinia massa diam vel eros. Proin eget urna.
Nunc fringilla neque vitae odio. Vivamus vitae ligula.</p>
<img src="images/btn-delete.gif" alt="delete" class="delete" />
</div>

<div class="panel">
<h5>Contoh heading / Judul</h5>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi malesuada,
ante at feugiat tincidunt, enim massa gravida metus,
commodo lacinia massa diam vel eros. Proin eget urna.
Nunc fringilla neque vitae odio. Vivamus vitae ligula.</p>
<img src="images/btn-delete.gif" alt="delete" class="delete" />
</div>




elemen yang memiliki class = "delete" merupakan child atau anak dari elemen dengan class = "panel" atau dalam hal ini disebut parent, dengan jQuery diatas maka pada saat class ="delete" di klik maka element panel akan di sembunyikan $(this).parents(".pane").animate({ opacity: 'hide' }, "slow") . silahkan coba dan praktekan sendiri.

Read more

Sabtu, 29 Januari 2011

Efek Bunga Bertaburan Pada Blog

Script Efek Blog Bertaburan Bunga : Jika bosan dengan efek yang telah digunakan selama ini, kita dapat mencoba script yang lain, seperti yang akan Tips dan Trik Blog sampaikan berikut ini. Dengan memasang script tersebut, kita akan mendapatkan efek bunga bertaburan pada blog kita. Jika tertarik, silakan ikuti tipsnya berikut ini.

Langkah-langkah untuk memasang script tersebut adalah sebagai berikut.

Pertama, login ke account blogger hingga masuk Dasbor >> Tata Letak >> Edit HTML
Kedua, cari dan temukan kode <body>
Ketiga, kemudian letakkkan script berikut ini di bawah kode tersebut.

<script language=”Javascript” src=”http://www.geocities.com/yono_pati/bunga.js”> </script>


Keempat, Simpan Template
Kelima, selesai

Jika langkah-langkah tersebut dirasa kurang praktis, kita dapat menambahkan script tersebut pada gadget, dengan langkah-langkah seperti di bawah ini.

Pertama, login account blogger hingga masuk Dasbor >> Tata Letak >> Tambah Gadget >> Tambahkan HTML/Javascript >>
Kedua, copykan script yang telah disebutkan di atas tersebut.
Ketiga, simpan perubahan
Keempat, selesai

Sekarang, refresh blog kita dan pastikan blog kita sudah “bertaburan bunga”. Oh, iya untuk tips selanjutnya, Tips dan Trik Blog akan mengetengahkan script yang membuat blog bertaburan “bunga bank”, pasti lebih seru, he,..he,..


Selamat Mencoba!!

http://tips-trik-blog.blogspot.com

Read more