Tuesday, May 22, 2012

Paket JavaScript Fitur Manipulasi Komentar Blogger

Manipulasi komentar Blogger
Manipulasi komentar Blogger

Rilis paket JavaScript manipulasi komentar Blogger! Setelah beberapa kali menemukan masalah pada kode JavaScript manipulasi komentar yang biasa digunakan (Saya rasa ada banyak dimana-mana dalam berbagai versi), kali ini Saya akan memperkenalkan versi yang lebih aman dan lebih lengkap. Berikut ini adalah beberapa fitur yang ada:

  • Menyisipkan gambar pada komentar Blogger.
  • Menyisipkan video YouTube ke dalam komentar Blogger.
  • Menyisipkan tag <code>
  • Menyisipkan tag <pre>
  • Menyisipkan <blockquote>
  • Mengubah teks emotikon secara otomatis.
  • Dua metode penyisipan kode untuk manipulasi komentar Blogger.
  • Aman. Kode braket kotak yang keliru saat diimplementasikan tidak akan diparse menjadi tag HTML.
  • CSS Fallback. Artinya bahwa jika JavaScript tidak bekerja, beberapa elemen penting masih bisa bekerja sebagaimana saat menggunakan JavaScript (Progressive Enhancement).
  • Pengaturan ukuran dan posisi dilakukan melalui CSS.

Lihat Sampel Manipulasi

Ada beberapa hal yang menjadi perhatian Saya di sini:

Perhatian Pertama: Rusaknya DOM (?)

Rusaknya elemen-elemen HTML karena terkadang JavaScript memanipulasi karakter dengan perintah yang salah yang berasal dari faktor manusia. Hal ini biasanya terjadi ketika penulis melakukan kesalahan saat menerapkan kode. Salah satu contoh umum adalah saat menyisipkan gambar dengan manipulasi braket kotak seperti ini:

[img]gambar-pemandangan.jpg[/img]

Kode di atas adalah kode yang dituliskan secara benar, sehingga kita bisa membuat manipulasi dengan regex untuk mengubahnya menjadi tag <img> seperti ini:

var a = something.innerHTML;
    a = a.replace(/\[img\]/ig, "<img src='");
    a = a.replace(/\[\/img\]/ig, "' alt='' />");
another.innerHTML = a;

Sehingga JavaScript akan mengubah kode di atas menjadi seperti ini:

<img src='gambar-pemandangan.jpg' alt='' />

Tapi terkadang kita juga bisa saja mengalami kesalahan ketik seperti ini:

[img]gambar-pemandangan.jpg[img]

Hal ini sangat berbahaya, karena sekali saja Anda melakukan kesalahan terhadap peraturan JavaScript yang Anda buat sendiri, meskipun hanya satu kode tapi itu bisa merusak dokumen HTML secara global!

<img src='gambar-pemandangan.jpg<img src='

Masalah system of blog pada diskusi hilangnya beberapa item komentar karena JavaScript - Permalink

Oleh karena itu, dibandingkan mengubah setiap karakter unik secara terpisah, akan lebih baik jika Anda menggabungkannya dalam satu kelompok, antara braket pembuka dan braket penutup:

var a = something.innerHTML;
    a = a.replace(/\[img\](.[^\]]*)\[\/img\]/ig, "<img src='$1' alt='' />");
another.innerHTML = a;

Cara di atas jauh lebih aman, karena JavaScript hanya akan memanipulasi karakter [img] yang memiliki penutupnya yaitu [/img]. Jika karakter akhirnya bukan [/img], maka JavaScript akan mengabaikannya. Itu adalah konsep yang Saya pegang di sini.

Penggunaan Tag HTML Asli

Ini penting, dan Saya memang lebih memfokuskan karya ini pada penerapan tag HTML murni, bukan braket kotak atau karakter-karakter paksaan lainnya. Blogger sudah memiliki fasilitas pengecekan validasi tag HTML pada formulir komentar mereka. Singkatnya, tag HTML bisa menjadi sesuatu yang sangat aman karena Blogger secara normal akan memastikan bahwa kode yang Anda tuliskan benar:

var a = something.innerHTML;
    // Mengubah tag <i> menjadi <code>
    a = a.replace(/<i rel="code">(.[^>]*)<\/i>/g, "<code>$1<\/code>");
another.innerHTML = a;

Progressive Enhancement

Saya menggunakan dua tag HTML utama yaitu <i> dan <b> dengan atribut rel yang berbeda-beda. Apa yang Saya lakukan di sini adalah Saya akan memastikan bahwa jika JavaScript tidak bekerja, maka tampilan tag HTML manipulator akan tetap sama dengan tag HTML yang akan menjadi penggantinya. Sebagai contoh, Saya akan menyamakan tampilan tag <pre> dengan <i rel="pre"> sebagai cadangan:

pre,
i[rel="pre"] {
  display:block;
  font:normal normal 12px/normal Monaco,"Courier New",Courier,Monospace;
  word-wrap:normal;
  white-space:pre;
  background-color:black;
  color:white;
  padding:.5em 1em;
  overflow:auto;
}

Dengan begitu Saya bisa memastikan bahwa jika tag <i rel="pre"> berhasil dimanipulasi menjadi tag <pre>, maka tampilan pada peramban akan tampak seperti apa adanya tag <pre>. Namun jika gagal dimanipulasi, tampilan tag <i rel="pre"> akan tetap tampak sebagai sesuatu yang memiliki wujud sama dengan tag <pre> - Selengkapnya bisa dibaca di CSS Fallback untuk Manipulasi Bagian Komentar

Mengatur Tampilan Melalui CSS

Semua pengaturan seperti lebar elemen, posisi dan warna dilakukan melalui CSS.


Cara Memasang Fitur Ini

Pertama-tama masuklah ke halaman editor HTML blog Anda. Klik Edit HTML dan klik Lanjutkan:

Edit HTML Blogger
Mengedit HTML

Temukan kode ini:

</head>

Salin kode CSS ini dan letakkan di atasnya:

<b:if cond='data:blog.pageType == &quot;item&quot;'>
<style>
/* Add More Features to the Blogger Comments by Taufik Nurrohman @http://www.dte.web.id */
img.emo {
  display:inline-block;
  vertical-align:middle;
}

#comment-holder .cm-youtube {
  display:block;
  border:none;
  background-color:#333;
  width:370px;
  height:218px;
  margin:0 auto 30px;
}

#comment-holder .cm-image {
  display:block;
  margin:0 auto 15px;
  outline:none;
  border:1px solid #ccc;
  background-color:white;
  -webkit-box-shadow:0 1px 3px rgba(0,0,0,.2);
  -moz-box-shadow:0 1px 3px rgba(0,0,0,.2);
  box-shadow:0 1px 3px rgba(0,0,0,.2);
  padding:5px;
  max-width:96%;
  height:auto;
  width:auto\9;
}

#comment-holder code,
#comment-holder i[rel="code"],
#comment-holder pre,
#comment-holder i[rel="pre"] {
  font:normal normal 12px/normal Monaco,"Courier New",Courier,Monospace;
  color:blue;
}

#comment-holder pre,
#comment-holder i[rel="pre"] {
  display:block;
  background-color:#333;
  color:white;
  padding:.5em 1em;
  word-wrap:normal;
  white-space:pre;
  overflow:auto;
}

#comment-holder blockquote,
#comment-holder b[rel="quote"] {
  margin:0 2%;
  background-color:#eee;
  padding:1em 1.2em;
  border-left:4px solid #7498AD;
  display:block;
  font-weight:bold;
  font-style:italic;
}

#comment-holder i[rel="image"],
#comment-holder i[rel="youtube"] {
  display:block;
  overflow:hidden;
  border:2px solid black;
  position:relative;
  width:170px;
  height:100px;
  margin:0 auto 30px;
}

#comment-holder i[rel="image"]:before,
#comment-holder i[rel="youtube"]:before {
  content:"Please enable your JavaScript to see this image!";
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background-color:red;
  color:white;
  font-weight:bold;
  text-align:center;
  padding:15px 0;
}

#comment-holder i[rel="youtube"]:before {content:"Please enable your JavaScript to watch this video!"}
</style>
</b:if>

Setelah itu temukan kode ini:

</body>

Salin kode ini dan letakkan di atasnya:

<b:if cond='data:blog.pageType == &quot;item&quot;'>
<script>
//<![CDATA[
// Add More Features to the Blogger Comments
// Fix some bugs that I got from some similar code out here :)
// Date: 21 May 2012
// Time: 22:50 WIB
// Author: Taufik Nurrohman
// URL: https://plus.google.com/108949996304093815163/about
function repText(id) {
    var a = document.getElementById(id);
    if (!a) return;
    var b = a.innerHTML, c = "//cdn.rawgit.com/tovic/dte-project/0ef9de902cf286a77272f9b3c6f8168c17ab61c6/emoticon/";
    // Images
    b = b.replace(/<i rel="image">(.*?)<\/i>/ig, "<img class='cm-image' src='$1' alt='loading...' \/>");
    b = b.replace(/\[img\](.*?)\[\/img\]/ig, "<img class='cm-image' src='$1' alt='loading...' \/>");
    // YouTube video
    b = b.replace(/<i rel="youtube">https?:\/\/www\.youtube\.com\/embed\/(.*?)<\/i>/ig, "<iframe class='cm-youtube' src='https://www.youtube.com/embed/$1'><\/iframe>");
    b = b.replace(/<i rel="youtube">(https?:\/\/youtu\.be\/|https?:\/\/www\.youtube\.com\/watch\?v\=)(.*?)<\/i>/ig, "<iframe class='cm-youtube' src='https://www.youtube.com/embed/$2'><\/iframe>");
    b = b.replace(/\[youtube\]https?:\/\/www\.youtube\.com\/embed\/(.*?)\[\/youtube\]/ig, "<iframe class='cm-youtube' src='https://www.youtube.com/embed/$1'><\/iframe>");
    b = b.replace(/\[youtube\](https?:\/\/youtu\.be\/|https?:\/\/www\.youtube\.com\/watch\?v\=)(.*?)\[\/youtube\]/ig, "<iframe class='cm-youtube' src='https://www.youtube.com/embed/$2'><\/iframe>");
    // Code & text block
    b = b.replace(/<i rel="code">(.*?)<\/i>/ig, "<code>$1<\/code>");
    b = b.replace(/<i rel="pre">(.*?)<\/i>/ig, "<pre>$1<\/pre>");
    b = b.replace(/<b rel="quote">(.*?)<\/b>/ig, "<blockquote>$1<\/blockquote>");
    b = b.replace(/\[code\](.*?)\[\/code\]/ig, "<code>$1<\/code>");
    b = b.replace(/\[pre\](.*?)\[\/pre\]/ig, "<pre>$1<\/pre>");
    b = b.replace(/\[blockquote\](.*?)\[\/blockquote\]/ig, "<blockquote>$1<\/blockquote>");
    // Finishing YouTube and Reduce filesize from images that uploaded by Blogger
    b = b.replace(/&feature=[\w-]*/ig, "");
    b = b.replace(/\/s(640|1600)/g, "/s400");
    // Emoticons
    b = b.replace(/\s:\)+/g, " <img class='emo' alt=':)' src='" + c + "01.gif'\/>");
    b = b.replace(/\s;\)+/g, " <img class='emo' alt=';)' src='" + c + "02.gif'\/>");
    b = b.replace(/\s:\(/g, " <img class='emo' alt=':(' src='" + c + "03.gif'\/>");
    b = b.replace(/\s=\(/g, " <img class='emo' alt='=(' src='" + c + "04.gif'\/>");
    b = b.replace(/\s@@,/g, " <img class='emo' alt='@@,' src='" + c + "05.gif'\/>");
    b = b.replace(/\s:s/ig, " <img class='emo' alt=':s' src='" + c + "07.gif'\/>");
    b = b.replace(/\s:(\\|\/)/g, " <img class='emo' alt=':\\' src='" + c + "08.gif'\/>");
    b = b.replace(/\s:D/g, " <img class='emo' alt=':D' src='" + c + "09.gif'\/>");
    b = b.replace(/\s=D/g, " <img class='emo' alt='=D' src='" + c + "10.gif'\/>");
    b = b.replace(/\s\^:D/g, " <img class='emo' alt='^:D' src='" + c + "11.gif'\/>");
    b = b.replace(/\s\^_?\^/g, " <img class='emo' alt='^_^' src='" + c + "12.gif'\/>");
    b = b.replace(/\s:'\(/g, " <img class='emo' alt=':&#39;(' src='" + c + "13.gif'\/>");
    b = b.replace(/\sT_T/ig, " <img class='emo' alt='T_T' src='" + c + "15.gif'\/>");
    b = b.replace(/\sB\)/g, " <img class='emo' alt='B)' src='" + c + "16.gif'\/>");
    b = b.replace(/\s:Q/ig, " <img class='emo' alt=':Q' src='" + c + "17.gif'\/>");
    b = b.replace(/\s7:\(/g, " <img class='emo' alt='7:(' src='" + c + "19.gif'\/>");
    b = b.replace(/\s:p/ig, " <img class='emo' alt=':p' src='" + c + "20.gif'\/>");
    b = b.replace(/\s:Oz+/ig, " <img class='emo' alt=':Ozzz' src='" + c + "21.gif'\/>");
    b = b.replace(/\s7:O/ig, " <img class='emo' alt='7:O' src='" + c + "22.gif'\/>");
    b = b.replace(/\s\\o\//ig, " <img class='emo' alt='\\o/' src='" + c + "23.gif'\/>");
    b = b.replace(/\s\\m\//ig, " <img class='emo' alt='\\m/' src='" + c + "24.gif'\/>");
    b = b.replace(/\s(<3|:\*)/ig, " <img class='emo' alt=':*' src='" + c + "25.gif'\/>");
    b = b.replace(/\s0:\)+/ig, " <img class='emo' alt='0:)' src='" + c + "26.gif'\/>");
    b = b.replace(/\s\^o\^/ig, " <img class='emo' alt='^o^' src='" + c + "27.gif'\/>");
    b = b.replace(/\s:-a/ig, " <img class='emo' alt=':-a' src='" + c + "28.gif'\/>");
    b = b.replace(/\s\*fck\*/ig, " <img class='emo' alt='*fck*' src='" + c + "29.gif'\/>");
    b = b.replace(/\sxV/ig, " <img class='emo' alt='xV' src='" + c + "30.gif'\/>");
    b = b.replace(/\sx\@/g, " <img class='emo' alt='x@' src='" + c + "31.gif'\/>");
    b = b.replace(/\s\X\@/g, " <img class='emo' alt='X@' src='" + c + "32.gif'\/>");
    b = b.replace(/\s:-d/ig, " <img class='emo' alt=':-d' src='" + c + "33.gif'\/>");
    b = b.replace(/\s:-bd/ig, " <img class='emo' alt=':-bd' src='" + c + "34.gif'\/>");
    b = b.replace(/\s\~x\(+/ig, " <img class='emo' alt='~x(' src='" + c + "35.gif'\/>");
    b = b.replace(/\s:W/g, " <img class='emo' alt=':W' src='" + c + "37.gif'\/>");
    b = b.replace(/\s''J/ig, " <img class='emo' alt='&#39;&#39;J' src='" + c + "47.gif'\/>");
    a.innerHTML = b;
} repText('comment-holder');
//]]>
</script>
</b:if>

Klik Simpan Template.

Pembaharuan: Mengganti pola /<tag>(.[^>]*)<\/tag>/ig dan /\[bracket\](.[^\]]*)\[\/bracket\]/ig menjadi /<tag>(.*?)<\/tag>/ig dan /\[bracket\](.*?)\[\/bracket\]/ig untuk meloloskan tag <br> di dalam tag manipulasi.

Penerapan Kode-Kode Manipulasi

Saya memberikan dua pilihan, yaitu menggunakan tag HTML dengan target manipulasi yang diambil berdasarkan atribut rel dan menggunakan kata-kata kunci yang dimasukkan ke dalam braket kotak sebagai penggambaran tag HTML. Saya merekomendasikan Anda untuk menggunakan tag HTML karena mereka masih bisa bekerja tanpa JavaScript (ini juga merupakan standar manipulasi komponen komentar di blog Saya):

Perintah Format
Memasukkan gambar <i rel="image">URL Gambar</i>
[img]URL Gambar[/img]
Memasukkan video YouTube <i rel="youtube">URL YouTube</i>
[youtube]URL YouTube[/youtube]
Memasukkan tag <code> <i rel="code">Kode Anda</i>
[code]Kode Anda[/code]
Memasukkan tag <pre> <i rel="pre">Kode Anda</i>
[pre]Kode Anda[/pre]
Memasukkan kuota <b rel="quote">Kata-kata Anda</b>
[blockquote]Kata-kata Anda[/blockquote]
Memasukkan emotikon Beberapa kode yang bisa digunakan: :) :( =( :s ^_^ :D =D ^:D @@, ;) :-bd :-d :'( :'( T_T :\ :p B) :Q :Ozz 7:( \o/ \m/ <3 0:) ^o^ :-a 7:O *fck* xV x@ X@ ~x( ''J :W

Labels: , , ,

116 Comments:

At Tuesday, May 22, 2012 at 10:01:00 AM GMT+7, Blogger Unknown said...

Saya malah belum mengeri dan belum tau malah bang, Ini aja masih berkutat diw3school untuk memahami Code-code. Saya cuma bisa bilang 100 :-bd untuk bang taufik. Otak bang taufik ini udah kayak sarapan Keju tiap hari saja. (Pintar banget). saya aja ndak lulus-lulus di w3school..

 
At Tuesday, May 22, 2012 at 10:13:00 AM GMT+7, Blogger Unknown said...

@Suwardi Unggit saya kasih 1001 :p

 
At Tuesday, May 22, 2012 at 10:19:00 AM GMT+7, Blogger Unknown said...

@Syndicate OS Kok 1001 yang :p kenapa tidak 1001 yang \o/ \o/ aja mas Sekalian amankan pertama kesampaian juga hari ini :D :D :D :D

 
At Tuesday, May 22, 2012 at 10:29:00 AM GMT+7, Blogger Taufik Nurrohman said...

@Suwardi Unggit Haha :D

Saya aja ndak lulus-lulus di w3school..

Jangan cuma main di W3Schools saja (banyak yang sudah melupakan W3School karena beberapa orang bilang referensinya tidak meyakinkan).
Main saja ke forum atau grup Facebook lalu nyoba ngubek-ubek status :)

 
At Tuesday, May 22, 2012 at 3:37:00 PM GMT+7, Blogger Sinto said...

@Taufik Nurrohman Bang, Saya pengennya gak pake tag untuk video dan gambar pengennya langsung URL aja seperti Regex Video dan Regex URL gambar itu :) semoga mengerti maksudnya :D

 
At Tuesday, May 22, 2012 at 6:14:00 PM GMT+7, Blogger arimjie blog said...

@Taufik Nurrohmandiskusi di blog mas taufik lebih bagusan, langsung sama masternya..

 
At Tuesday, May 22, 2012 at 6:16:00 PM GMT+7, Blogger Taufik Nurrohman said...

@system of blog Sudah Saya coba mas, tapi ternyata sangat berbahaya!
Ini adalah produk gagalnya, untuk mengubah URL menjadi video atau gambar secara langsung:

var autoReplaceImageURL = true,
autoReplaceYouTubeLink = true; // GAGAL!!!
if(autoReplaceImageURL) {
b = b.replace(/\[img\](.[^\]]*)\[\/img\]/g, "$1");
b = b.replace(/<i rel="image">(.[^>]*)<\/i>/g, "$1");
b = b.replace(/(http:\/\/[\w\-\.]+\.[a-zA-Z]{2,3}(?:\/\S*)?(?:[\w])+\.(?:jpg|jpeg|png|gif|bmp))/ig, "<img class='cm-image' src='$1' alt='loading...' \/>");
}
if(autoReplaceYouTubeLink) {
b = b.replace(/\[youtube\](.[^\]]*)\[\/youtube\]/g, "$1");
b = b.replace(/<i rel="youtube">(.[^>]*)<\/i>/g, "$1");
b = b.replace(/(?:http:\/\/)?(?:www\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=)?(.+ )/g, "<iframe class='cm-youtube' src='http://www.youtube.com/embed/$1'><\/iframe>");
}


Terkadang cara manual itu lebih baik (lebih aman) dibandingkan cara otomatis. Belum lagi jika si penulis tidak menghendaki jika URL yang dia tuliskan berubah menjadi sesuatu yang lain.
Itu pendapat Saya. Pengubah gambar secara otomatis memang bekerja pada kode di atas, tapi pengubah URL video otomatisnya masih perlu di-finishing lagi. Masih perlu mencari tahu lagi :W

 
At Tuesday, May 22, 2012 at 7:14:00 PM GMT+7, Blogger Unknown said...

@Taufik Nurrohman Terima kasih bang saran-nya. Kalau forum yang bagus itu di mana bang ? kerena selama ini bebrapa forum cuma yang di bahas malah cheat point blank. Kalau status fb dan Group udah di ubek-ubek bang tapi masih kurang banyak. seharus-nya kata Otak bang taufik ini udah kayak sarapan Keju tiap hari saja (Pintar banget). yang harus dikelilingi elemen bukan yang Saya aja ndak lulus-lulus di w3school...

 
At Tuesday, May 22, 2012 at 9:03:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Suwardi Unggit Kebanyakan sih forum berbahasa Inggris. Siapkan saja Google Translate. Mengenai forum apa saja yang bisa dibaca ada banyak sekali (tidak harus ikut ke forum). Cukup tulis kata kunci di Google dengan tipe kata kunci berupa pertanyaan dalam bahasa Inggris. Misal: "How can I split each letter with regex?"
Dan lain sebagainya.

 
At Wednesday, May 23, 2012 at 9:07:00 AM GMT+7, Blogger Sinto said...

@Taufik Nurrohman Ckckcck betul juga bang beberapa waktu lalu juga aku nyoba ternyata error semua gambar yang ada di area komen holder :D

 
At Wednesday, May 23, 2012 at 12:41:00 PM GMT+7, Blogger Unknown said...

@Taufik Nurrohman Oke terima kasih bang saran-nya. udah saya terapkan dan tadi baru dapat multiple backgrounds and borders with css yang saya cari, mungkin itu langkah awal yang baik :D :D

 
At Wednesday, May 23, 2012 at 2:42:00 PM GMT+7, Anonymous Anonymous said...

Mas kalau saya misalnya ingin memasukan kode emoticon di post pasti semua kode tersebut akan di rubah oleh JS ya?

Terus kalau saya ingin menunjukkan kepada pengunjung bagaimana cara menulis Emoticon bagaimana mas? Saya sih pinginnya kayak punya kamu ini, waktu di klik gambar emoticon muncul beserta kode emoticonnya.

Saya dari kemaren sampai pusing ndak bisa tidur cari JS buat gambar emot di klik muncul kodenya di source code blog kamu... Aku bingung semua JS yang aku lihat kok perasaan ndak ada yang buat itu ya.... Walaupun JS external, hehehhehehe yang ada malah Huge JS dan Some Json ajah? :'(

Mohon bantuannya ya mas, karena saya sudah lelah dari kemaren cari tuh JS?

 
At Wednesday, May 23, 2012 at 3:11:00 PM GMT+7, Blogger Taufik Nurrohman said...

@The7Bloggers Itu emotikon versi lama kok. Cek di Emotikon Blogger Otomatis dengan JQuery

 
At Wednesday, May 23, 2012 at 4:05:00 PM GMT+7, Blogger Sinto said...

Bang Sekalian kasi masukan lagi pada kode ini

#comment-holder .cm-image {
display:block;
margin:0 auto 15px;
outline:none;
border:1px solid #ccc;
background-color:white;
-webkit-box-shadow:0px 1px 3px rgba(0,0,0,0.2);
-moz-box-shadow:0px 1px 3px rgba(0,0,0,0.2);
box-shadow:0px 1px 3px rgba(0,0,0,0.2);
padding:5px;
}


TOlong tambahin css max-width bang soalx waktu dulu admin blog 7 blogger komen dengan menggunakan gambar yang sangat besar hasilx berantakan jadi kalau di tambahin max-width kan gak segede itu :)

 
At Wednesday, May 23, 2012 at 5:29:00 PM GMT+7, Blogger Taufik Nurrohman said...

@system of blog Siap laksanakan!
Sebenarnya kalau penulis komentar memakai URL gambar yang diunggah melalui blogspot bisa langsung diperkecil ukurannya melalui JavaScript. Lihat di sini:

b = b.replace(/\/s(640|1600)/g, "/s400");

Tapi pengecualian untuk gambar-gambar yang diunggah ke direktori lain selain Picasa, mereka harus diperkecil dengan CSS max-width.

 
At Thursday, May 24, 2012 at 11:35:00 AM GMT+7, Blogger Sinto said...

@Taufik Nurrohman betul bang aku udah liat kok maksud kode itu, :) dan gak mungkin juga semua orang mau masukin gambar yg di host di blogspot bisa saja dr web lain :)

 
At Thursday, May 24, 2012 at 11:49:00 AM GMT+7, Anonymous Anonymous said...

@Taufik Nurrohman Hehehehehehe udah jadi bang? :) Cek this out in my blog....? :) Hehhehhehehe B)

 
At Thursday, May 24, 2012 at 12:02:00 PM GMT+7, Anonymous Anonymous said...

@The7Bloggers Sekarang yang saya bingungkan mengapa kalau aku pasang related post itu tidak muncul mas, padahal feed post aku udah aku hidupin kok? :)

 
At Thursday, May 24, 2012 at 12:59:00 PM GMT+7, Anonymous Anonymous said...

@The7Bloggers Bang kenapa kalau aku mau kasih pesan form komentar emoticon kok kagak di rubah menjadi emo juga....? Alias masih dalam bentuk teks....

 
At Thursday, May 24, 2012 at 2:18:00 PM GMT+7, Blogger Taufik Nurrohman said...

@The7Bloggers Itu karena wilayah yang dimanipulasi cuma dibatasi pada #comment-holder:

repText('comment-holder');

Kalau mau mengaktifkan emotikon di bagian formulir komentar, tambahkan ini:

repText('threaded-comment-form');

 
At Friday, May 25, 2012 at 1:48:00 PM GMT+7, Anonymous Anonymous said...

@Taufik Nurrohman Mas masalah artikel terkait sudah terselesaikan tapi sekarang timbul masalah baru yaitu mengapa setelah aku pasang artikel terkait emoticonnya kalau di klik kok tidak muncul kodenya? :( Konflik ya....?

 
At Friday, May 25, 2012 at 5:25:00 PM GMT+7, Blogger Taufik Nurrohman said...

@The7Bloggers Hmmm... jadi puyeng @@,

 
At Friday, May 25, 2012 at 7:48:00 PM GMT+7, Anonymous Anonymous said...

@Taufik Nurrohman Kira-kira bisa di perbaiki tidak mas? :) Aku udah coba pisah pisah kodenya tetep ndak berhasil?

Oya mas thread komentar blogger asli bisa tidak di buat kayak punya blog kamu ini yang gunakan #hash URL?

 
At Friday, May 25, 2012 at 10:15:00 PM GMT+7, Blogger Taufik Nurrohman said...

@The7Bloggers Nanti lama-lama juga ketemu ^o^
Semua komentar blogspot punya permalink:

http://2.bp.blogspot.com/-qatR6kR4ns8/T7-hnMbS9OI/AAAAAAAACx4/TTqVFoGnVEg/s1600/permalink.png

Klik saja pada tanggal terbit komentarnya, permalink ada di situ :)

 
At Tuesday, June 19, 2012 at 6:19:00 AM GMT+7, Blogger Unknown said...

Mas Taufik Kok q malah gk muncul ya kyk mas taufik di blog q tolong di cek lock21[dot]blogspot[dot]com :D

 
At Wednesday, June 27, 2012 at 1:19:00 PM GMT+7, Blogger Muhammad Irham said...

di blogku ngak bisa kang taufik, nih ada gambar beginian
http://1.bp.blogspot.com/-7JmzBGefLDc/T-qlb8grw_I/AAAAAAAAAWo/TPJ30ciSve0/s1600/Untitled-1.png

 
At Friday, July 6, 2012 at 10:12:00 PM GMT+7, Anonymous Anonymous said...

Mas Taufik,
scriptnya kok gak fungsi yah kalo komen di static page??

 
At Sunday, July 8, 2012 at 1:21:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Muhammad Irham Kode memang harus dibungkus dengan <i rel="pre">, tapi kontennya harus diparse dulu. Terutama tag HTML. Coba pencet tombol di atas ^:D yang bertuliskan Konversi Kode di Sini! Itu bisa dipakai untuk generator standar JavaScript ini.

 
At Sunday, July 8, 2012 at 1:24:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Naufal Hanif Rabbani Mungkin ada script khusus lain di halaman statis yang bikin error. Script di dalam tag kondisional halaman statis. Lagian ada juga ya, yang nulis komentar berupa kode di halaman statis? Halaman statis itu kan bukan artikel?

 
At Thursday, July 12, 2012 at 6:50:00 AM GMT+7, Anonymous Anonymous said...

iya mas, bukan..
tapi alhamdulillah kok sudah bisa saya atasi, makasih ya mas :)

http://a-nx.blogspot.com/p/link-exchange.html

 
At Saturday, July 14, 2012 at 3:29:00 PM GMT+7, Anonymous Anonymous said...

kalo mau menambah paragraf dan class button seperti agan gmn yah :(

 
At Saturday, July 14, 2012 at 10:48:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Itz Me Amar Nggak diapa-apakan.

 
At Sunday, July 15, 2012 at 12:42:00 PM GMT+7, Anonymous Anonymous said...

@Taufik Nurrohman http://2.bp.blogspot.com/-8OHIYBH0UJ0/UAJXt4lCUnI/AAAAAAAAANI/cOgdEiuIkmg/s1600/error.bmp

kok saya kaya begitu :(

 
At Sunday, July 15, 2012 at 3:20:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Itz Me Amar Nggak bisa mas, nggak masuk ke dalam daftar manipulasi. Kalaupun mau membuat seperti itu mungkin harus menambahkan manipulasi, misalnya: <b rel="button">Tombol</b> lalu buat sendiri JavaScript-nya supaya bisa mengubah elemen <b rel="button">Tombol</b> menjadi <button>Tombol</button>
Cek komentar Muhammad Irham di atas ^:D

 
At Sunday, July 15, 2012 at 4:31:00 PM GMT+7, Blogger Muhammad Irham said...

~x( kang di template saya ngak ada perubahan sedikitpun ~x(

 
At Sunday, July 15, 2012 at 6:49:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Muhammad Irham Di blog yang mana??? :\

 
At Sunday, July 15, 2012 at 10:20:00 PM GMT+7, Blogger Muhammad Irham said...

@Taufik Nurrohman wah saya malu nyebutin blog saya di sini, blog yang mungkin paling simpel dan paling berat yang pernah mas taufik temui

koderator.blogspooooooooooooooooooooooooooooooooooooooooot.com

 
At Wednesday, July 18, 2012 at 3:17:00 PM GMT+7, Blogger Muhammad Irham said...

gimana nih kok ngak di tanggepin?

 
At Wednesday, July 18, 2012 at 4:55:00 PM GMT+7, Blogger Taufik Nurrohman said...

Sudah lama Saya cek, tapi Saya periksa kode sumber di blogmu tidak ada kode seperti di atas.

 
At Wednesday, July 18, 2012 at 9:04:00 PM GMT+7, Blogger Muhammad Irham said...

ya, karena udah saya hapus, krn sebelumnya udah ngak bisa

 
At Thursday, August 30, 2012 at 9:08:00 AM GMT+7, Anonymous Anonymous said...

http://3.bp.blogspot.com/-XbNyOobDywk/T7p9IVSrsEI/AAAAAAAACtY/VTLI-FQ4hvY/s80/adding-more-features-on-blogger-comments.png

 
At Friday, August 31, 2012 at 12:03:00 AM GMT+7, Anonymous Anonymous said...

Hi Admin, i found that size of png image isn't like jpg image using this script
please help me

 
At Friday, August 31, 2012 at 7:34:00 AM GMT+7, Blogger Taufik Nurrohman said...

It's because I have compress the images resolution for page load speed reasons.
If you want to disable the image compression and display the original image size, you can remove this code from the script:

b = b.replace(/\/s(640|1600)/g, "/s400");

 
At Sunday, September 9, 2012 at 7:07:00 PM GMT+7, Blogger Ismail Sosse Alaoui said...

Thanks Mr Taufik for the first reply, i had another problem: that youtube video doesn't work when i insert link using this script
URL YouTube but it works using this
[youtube]URL YouTube[/youtube]
thanks to reply

 
At Sunday, September 9, 2012 at 8:59:00 PM GMT+7, Blogger Taufik Nurrohman said...

I forgot the last back slash. Now it should works. Check the improved code above, or: DEMO

 
At Monday, September 10, 2012 at 12:02:00 AM GMT+7, Anonymous Anonymous said...

It doesn't work, i ask you please if you can correct me this script: b = b.replace(/<i rel="youtube">.*?'.*?<\/i>/gi, "");
b = b.replace(/<i rel="youtube">http:\/\/youtu.be<\/i>/gi, "<iframe class='youtube' src='http://www.youtube.com/embed");
b = b.replace(/<i rel="youtube">http:\/\/www.youtube.com\/watch\?v=<\/i>/gi, "<iframe class='youtube' src='http://www.youtube.com/embed/");
b = b.replace(/&amp;feature=/gi, "?rel=0' '");
b = b.replace(/<i rel="youtube">/gi, "?rel=0' frameborder='0' allowfullscreen><\/i>/</iframe>");

 
At Monday, September 10, 2012 at 11:39:00 AM GMT+7, Blogger Taufik Nurrohman said...

It seems you're trying to modify the script from DuyPham and change the bracket symbol to a HTML tag. That's not enough. Changes the [youtube] pattern to <i rel="youtube"> doesn't mean that the problem is fixed. If I can guess, maybe your problem is because you put my Blogger comments manipulation script with another version of Blogger comments manipulation script together :\

 
At Monday, September 10, 2012 at 6:38:00 PM GMT+7, Blogger Ismail Sosse Alaoui said...

I'm using Fellip Calvo system comment, and the of you script concerning Youtube video doesn't work. but one of DUY PHAM work for this aim i asked if you can correct your script or help me to make the script works
. thanks

 
At Monday, September 10, 2012 at 8:01:00 PM GMT+7, Blogger Taufik Nurrohman said...

It means that there is no problem with the code, just a few functions above it may make the function below not working. Regex is used to manipulate the characters, if you try to change the character A to B, then you should be able to find A first and then change it into B. But, if something above the function has transformed A into something else first, then the next function will not be able to find A and will not turn it into B.

Here is an example of how regex can destroy my functions below ⇒ http://jsfiddle.net/tovic/MjWRM/2/
You can't install all Blogger comments manipulation script from different version together in a blog. You have to choose one.
It's just my guess :(

 
At Monday, October 22, 2012 at 8:27:00 PM GMT+7, Blogger Chandra said...

BINGUNG KANG

 
At Thursday, January 10, 2013 at 9:38:00 AM GMT+7, Anonymous Anonymous said...

kalo saya hanya ingin menambah fitur untuk memasukan gambar saja gmn mas??

 
At Friday, January 11, 2013 at 12:21:00 AM GMT+7, Blogger Taufik Nurrohman said...

<b:if cond='data:blog.pageType == &quot;item&quot;'>
<script type="text/javascript">
//<![CDATA[
// URL: https://plus.google.com/108949996304093815163/about
function repText(id) {
if (document.getElementById(id)) {
var a = document.getElementById(id).innerHTML;
a = a.replace(/<i rel="image">(.*?)<\/i>/ig, "<img class='cm-image' src='$1' alt='loading...' \/>");
a = a.replace(/\[img\](.*?)\[\/img\]/ig, "<img class='cm-image' src='$1' alt='loading...' \/>");
document.getElementById(id).innerHTML = b;
}
} repText('comment-holder');
//]]>
</script>
</b:if>

 
At Thursday, January 17, 2013 at 10:23:00 PM GMT+7, Blogger binkbenk said...

sedikit masukan sobat...
kemarin saya coba utak-atik tambahin buat lagu2/flash

b = b.replace(/\[embed\](.[^\]]*)\[\/embed\]/ig, "<embed class='musik' pluginspage='http://www.macromedia.com/go/getflashplayer' quality='high' src='$1' type='application/x-shockwave-flash' wmode='transparent' allowfullscreen='true'><\/embed>");

kalau buat videonya saya ganti seperti ini saja, malah fungsinya gak cuman manggil video,,,

b = b.replace(/\[frame\](.[^\]]*)\[\/frame\]/ig, "<iframe class='vrame' src='$1'><\/iframe>");

Gak tau itu bener apa salah ya,, tapi kok bisa
Mohon penjelasannya sobat

 
At Saturday, January 26, 2013 at 11:23:00 AM GMT+7, Blogger IRIL SAGITA said...

Kak, blog aku kok jadinya gini ya :

http://2.bp.blogspot.com/-f4eV7Bz2jXo/UQNZr17NM2I/AAAAAAAAID8/tCemSnx1rJQ/s1600/Error%2Bimage.png

pusing aku jadinya, contohnya di :

http://www.tutorial-sagita.tk/2012/09/cara-membuat-halaman-error-404-blog.html

 
At Saturday, January 26, 2013 at 3:50:00 PM GMT+7, Blogger Unknown said...

Sama kaya saya permasalahnya, jadi tinggal tunggu dari masternya aja :)

Oia bang, saya ijin sourch CSSnya class catatan blog ini diblog saya yah mas :) , maaf ijinnya belakangan :D

 
At Saturday, January 26, 2013 at 7:28:00 PM GMT+7, Blogger Taufik Nurrohman said...

Kontainer komentar blogmu bukan <div id='comment-holder'>, tapi <div class='cm_block'>. Jadi eksekusi kodenya nantinya seperti ini:

repText('cm_block');

Script ini cuma menerima ID, jadi elemen pembungkus daftar komentar harus dilengkapi dengan ID cm_block:

<div class='cm_block' id='cm_block'>

 
At Saturday, January 26, 2013 at 8:56:00 PM GMT+7, Blogger IRIL SAGITA said...

Makasih kak, udah jadi and mantab.

 
At Saturday, January 26, 2013 at 9:49:00 PM GMT+7, Blogger Unknown said...

komentar saya masih <div id='comment-holder'> , kok konten gambarnya masih pesan error yah kayak pesan gambarnya iril yang di atas?

 
At Saturday, January 26, 2013 at 10:13:00 PM GMT+7, Blogger Taufik Nurrohman said...

Yang penting kodenya harus diletakkan setelah blok komentar (dalam hal ini adalah di atas </body>, yaitu posisi yang paling bawah dari halaman). Kalau tetap tidak jadi mungkin ada masalah yang lain.

 
At Saturday, January 26, 2013 at 11:57:00 PM GMT+7, Blogger Unknown said...

Wah bener bang, paket JScriptnya lupa kaga keajak. Hhah untung kaga ada masalah yang laen :)
Saya kagak tau mau kasih apa baeknya blog DTE karena saya orang yang serba terbatas, jadi saya cuman bisa bilang Terima kasih banyak atas responnya.

 
At Sunday, February 3, 2013 at 11:11:00 AM GMT+7, Blogger Unknown said...

Mas kenapa emeticon-nya gk muncul ? kan saya pke kode diatas?
tolong di cek ni blognya idblogzz[dot]blogspot.com

 
At Monday, February 4, 2013 at 2:15:00 PM GMT+7, Blogger Unknown said...

Maksud saya gmana buat muncul seperti ini mas Taufik?
http://4.bp.blogspot.com/-aZny1NlyeT4/UQ9fXex_nWI/AAAAAAAAADg/vbzkkAuRgCE/s1600/qwd1.png

 
At Monday, February 4, 2013 at 6:45:00 PM GMT+7, Blogger Taufik Nurrohman said...

Pada pengaturan pesan komentar, buat beberapa baris baru berupa emotikon:

 :p :D

Sementara dua dulu. Kalau sudah jadi baru ditambah emot lainnya. Setelah itu tambahkan eksekusi baru lagi, setelah repText('comment-holder') sehingga jadi seperti ini:

repText('comment-holder'); repText('comment-form'); repText('threaded-comment-form');

 
At Wednesday, February 6, 2013 at 6:06:00 PM GMT+7, Blogger Unknown said...

makasih saya coba ni... :D

 
At Friday, March 8, 2013 at 8:53:00 AM GMT+7, Blogger Kucing Arab said...

Punya saya gk bisa muncul emoji nya mas :'(
etsyteamnfcr(dot)blogspot.com

 
At Friday, March 8, 2013 at 9:11:00 AM GMT+7, Blogger Taufik Nurrohman said...

Punyamu masih memakai markup komentar versi lama, jadi pakai eksekusi yang ini:

repText('comments-block');

NB: Kalau sudah pakai emotikon yang versi JQuery tidak perlu lagi memasang ini, nanti malah rusak.

 
At Sunday, April 7, 2013 at 3:10:00 PM GMT+7, Anonymous Anonymous said...

Semoga Bisa kakak..
Coba ya

 
At Tuesday, April 16, 2013 at 12:04:00 AM GMT+7, Blogger budkalon said...

AH!!!! Wah!!!!! Saya gak tahu penyebabnya tapi di saya juga bisa! :D

 
At Sunday, June 2, 2013 at 9:11:00 PM GMT+7, Blogger Unknown said...

Kenapa ya sob pas saya mengikuti jawaban yg mas jawab pada pertanyaannya mas Permalink Rizky Ramadhan (untuk memuncul Emo pada pesan komentar?) saya punya nggak muncul ya? mohon bantuannya sob

 
At Wednesday, June 5, 2013 at 7:06:00 PM GMT+7, Blogger Unknown said...

Semua serba pake Variabel, jadi ringkas dan mudah dipahami ! :yaya:

 
At Thursday, July 4, 2013 at 2:47:00 AM GMT+7, Blogger Kang Rian said...

#great tutorial ! :-bd ( you can visit me back master !! http://blog.riandesign.web.id ) #seeyou :yaya:

 
At Thursday, December 5, 2013 at 8:32:00 PM GMT+7, Blogger you said...

mas cara agar ketika klik emotikon muncul input kodenya gmn? saya coba utak atik pake kode ini v gagal

 
At Thursday, December 5, 2013 at 8:34:00 PM GMT+7, Blogger you said...

$('.emo').css('cursor', 'pointer').live("click", function(e) {
$('input.emoKey').remove();
$(this).after('<input class="emoKey" type="text" size="6" value=" ' + this.alt + '" />');
e.stopPropagation();
});
$('input.emoKey').live("click", function() {
$(this).focus().select();
});

 
At Friday, December 6, 2013 at 8:27:00 AM GMT+7, Blogger Taufik Nurrohman said...

$(document.body).on("click", function() {
$('.emoKey').remove();
});
$('.emo').on("click", function(e) {
$('.emoKey').remove();
$(this).after('<input class="emoKey" type="text" size="6" value=" ' + this.alt + '"/>');
$('.emoKey').focus().select();
e.stopPropagation();
});


Letakkan setelah repText('comment-holder');
Ganti juga semua nilai atribut alt gambar menjadi kode kunci emotikon, seperti apa yang Saya jelaskan ke The7Bloggers di atas.

 
At Monday, March 10, 2014 at 6:56:00 PM GMT+7, Blogger Saeful Rahman said...

mas gimana caranya input kode emoticon lebih dari satu kode, dengan cara manual bisa saja namun kurang efektif. Apakah bisa dipersingkat ?

misalkan untuk emoticon smile, terdapat pilihan kode seperti :)atau:-).

 
At Sunday, March 16, 2014 at 10:02:00 AM GMT+7, Blogger Taufik Nurrohman said...

b.replace(/\s\:-?\)/ig, " ... ");

 
At Saturday, April 19, 2014 at 9:43:00 PM GMT+7, Blogger Unknown said...

gimana mas agar link admin tidak terkena block juga???
contohnya seperti punya mas ini: [url= http://nama_situs.com]Teks Tautan[/url]

 
At Monday, April 21, 2014 at 7:29:00 PM GMT+7, Blogger Taufik Nurrohman said...

/2011/08/membedakan-tampilan-komentar.html

 
At Friday, January 2, 2015 at 12:49:00 PM GMT+7, Blogger Catur Apriyadi said...

Mas Taufik Kendala saya sama :
1.untuk menampilkan di atas komentar gmn? saya jg sudah tambahkan code
repText('comment-holder'); repText('comment-form'); repText('threaded-comment-form'); Tapi tetap tidak muncul, gmn tuh mas?

2. yang kedua gimana agar fungsi pre di komentar sama seperti yg di posting, jd warna kodenya ga cuma putih aja. padahal SyntaxHighlighternya jg sudah saya pasang

 
At Saturday, January 3, 2015 at 6:33:00 PM GMT+7, Blogger Unknown said...

Kalau mau meletakkan manipulasi ini di Post berarti pada } repText('comment_block'); di edit jadi } repText('comment_block','post'); ?

 
At Tuesday, January 20, 2015 at 9:07:00 PM GMT+7, Blogger Taufik Nurrohman said...

Kurang lebihnya seperti ini. Tapi tempat meletakannya yang akan sedikit lebih rumit lagi:

<script>repText(&#39;post-<data:post.id/>&#39;);</script>

 
At Tuesday, January 20, 2015 at 9:11:00 PM GMT+7, Blogger Taufik Nurrohman said...

Mungkin kamu punya masalah di sini → /2013/08/memahami-domcontentloaded.html

 
At Thursday, February 5, 2015 at 10:19:00 PM GMT+7, Blogger Asyaf Syaffar said...

semuanya dijelaskan dengan rinci dan detail (easy learning)
termasuk HTML,CSS dan Javascript
terima kasih atas tutorialnya dan sudah saya terapkan diblog saya
semoga blog ini makin maju jaya \o/

 
At Thursday, February 5, 2015 at 10:37:00 PM GMT+7, Blogger Rizal Nurhidayat said...

Mas Taufik, saya mau tanya tapi sebenernya saya bingung jelasin pertanyaannya darimana...
Begini mas, saya mau tanya kalo menambahkan kode lain untuk dikonversi menjadi emoticon itu codenya harus di parse jadi kode apa?

Semisal untuk mengkonversi kode :) menjadi emoticon :) kode yang ditulis di replace jadi /\s:\)+/g, nah jika saya mau menambahkan kode lain selain yang ada pada default kode itu harus dirubah seperti apa?

Mohon pencerahannya... terimakasih... :)

 
At Saturday, February 7, 2015 at 10:53:00 PM GMT+7, Blogger Taufik Nurrohman said...

Ini pakai Regex. Sulit diungkapkan dengan kata-kata. Belajar saja metodenya di sini → http://www.regular-expressions.info/quickstart.html

 
At Saturday, February 7, 2015 at 11:51:00 PM GMT+7, Blogger Rizal Nurhidayat said...

Makasih mas jawabannya... nambah ilmu lagi dan makin tertari dengan javascript... =D

 
At Sunday, February 8, 2015 at 9:16:00 AM GMT+7, Blogger Rifan hidayat said...

kayak cinta aja mas, sulit diungkapkan dengan kata kata.. **p

 
At Monday, February 16, 2015 at 11:25:00 PM GMT+7, Blogger Dewa Teknik said...

gan,,blog ane kok nggak bisa jalan yaa,,pliss lihat blog ane ya gan :'(

bacilsoft dot blogspot dot com/2014/06/membuat-widget-popular-posts-dengan.html

makasih banyak gan

 
At Wednesday, February 18, 2015 at 1:21:00 PM GMT+7, Blogger Taufik Nurrohman said...

repText('comment_block');

 
At Wednesday, February 18, 2015 at 1:57:00 PM GMT+7, Blogger Dewa Teknik said...

makasih banyak gan,,semoga Allah membalas kebaikan agan :)

oh yaa,,kalo mau bikin gambar dan youtube yang ada di comment berada di tengah gimana ya gan??

 
At Wednesday, February 18, 2015 at 3:31:00 PM GMT+7, Blogger Taufik Nurrohman said...

Kalau kamu pakai CSS di atas harusnya sih sudah ke tengah secara otomatis. Jangan lupa ganti selektor ID-nya (semuanya):

#comment_block .cm-youtube {

margin:0 auto 30px;
}

#comment_block .cm-image {

margin:0 auto 15px;
}

 
At Wednesday, February 18, 2015 at 3:46:00 PM GMT+7, Blogger Dewa Teknik said...

alhamdulillah,sudah berhasil mas,,makasih banyak atas bantuannya :) :okey :hore

 
At Saturday, February 21, 2015 at 8:34:00 PM GMT+7, Blogger Unknown said...

mas, pas saya masukin kode yang posisinya d atas kode "body" itu dan ingin save templatenya kok malah error ya?

 
At Saturday, February 21, 2015 at 11:01:00 PM GMT+7, Blogger Taufik Nurrohman said...

Error bagaimana?

/2013/01/bagaimana-cara-bertanya-yang-baik-di.html

 
At Saturday, February 21, 2015 at 11:05:00 PM GMT+7, Blogger Taufik Nurrohman said...

Oh iya maaf. CDATA–nya lupa ditutup pas ngedit kemarin.

 
At Wednesday, February 25, 2015 at 2:32:00 AM GMT+7, Blogger Rizky said...

kang saya udah coba semua cara, suapaya javascrept yang diatas </body> bisa berfungsi tp tetep aja ga fungsi, apa karna versi jquerynya? atau hal lain? mohon panduannya. :(
cek sumbernya disini primecyber.blooooooooooogspot.com

 
At Saturday, May 30, 2015 at 12:00:00 AM GMT+7, Blogger Unknown said...

pak kalau sudah pakai threaded comment apa harus di disable "false" dulu untuk fungsi yang sama?

 
At Sunday, May 31, 2015 at 3:32:00 PM GMT+7, Blogger Taufik Nurrohman said...

Seharusnya tinggal ganti ID saja jadi comment-holder.

 
At Saturday, June 6, 2015 at 12:43:00 AM GMT+7, Blogger Unknown said...

pak untuk nambahi menyisipkan tautan aman dengan kode [url] seperti blog ini bagaimana pak?

 
At Thursday, June 11, 2015 at 1:27:00 PM GMT+7, Blogger Taufik Nurrohman said...

/2012/07/no-live-links.html

Dibaca saja diskusi-diskusi di bawahnya.

 
At Friday, August 7, 2015 at 3:16:00 PM GMT+7, Blogger Unknown said...

pak kalau emoticon facebook penguin <(\") regexnya gimana yah?

 
At Sunday, September 6, 2015 at 9:04:00 AM GMT+7, Blogger Taufik Nurrohman said...

test.replace(/<\(\"\)/g, …);

 
At Friday, October 9, 2015 at 10:49:00 AM GMT+7, Blogger IRIL SAGITA said...

Kalau pingin manipulasi ini juga work di notifikasi komentar gimana caranya kak ?

 
At Monday, October 12, 2015 at 12:51:00 PM GMT+7, Blogger Taufik Nurrohman said...

Kurang lebihnya mirip dengan ini → /2012/11/recent-comments-widget-for-blogger-with.html?showComment=1414412973377#c4819522075277822754

 
At Sunday, January 17, 2016 at 1:54:00 PM GMT+7, Blogger Irfan Muhammad Ghani said...

mas kalau buat yang kayak ginian gimana?
[img]http://i.imgur.com/2FFr2eG.png[/img]

 
At Sunday, January 17, 2016 at 5:09:00 PM GMT+7, Blogger Irfan Muhammad Ghani said...

atau buat kayak gini aja ya
b = b.replace(/\[update\](.*?)\[\/update\]/ig, "<div class='update'>$1<\/div>");

 
At Tuesday, January 26, 2016 at 4:33:00 PM GMT+7, Blogger Taufik Nurrohman said...

Situs keblokir.

 
At Monday, July 11, 2016 at 10:07:00 PM GMT+7, Blogger Unknown said...

gk bisa bro :(

 
At Wednesday, July 13, 2016 at 1:25:00 PM GMT+7, Blogger Unknown said...

kalo url video yang dimasukin pake https kok tidak bisa ya?

 
At Thursday, July 14, 2016 at 11:15:00 AM GMT+7, Blogger Taufik Nurrohman said...

Sekarang sudah bisa :)

 
At Friday, July 15, 2016 at 9:53:00 AM GMT+7, Blogger Unknown said...

terimakasih mas sangat membantu, saya coba tidak berhasil ternyata dibagian ini b = b.replace(/&lt;i rel=" harus tetap seperti yang sebelumnya mas, seperti ini b = b.replace(/<i rel=".
hehe tanya lagi mas, kalo mau di tambahin yang replace link seperti diblog ini gimana? saya coba buat regexnya [url=https://regex101.com/r/xY9aN3/1]seperti ini[/url] tapi tidak berhasil menerapkan dibagian ini b = b.replace(/\[link=https?:\/\/(www\.)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-](\S*[&|#]\S+)*)*\/?\][^\s\\](.*?)\[\/link\]/ig, "<span data-linkhref='$1' title='Lampiran'>$1<\/span>");

 
At Friday, July 15, 2016 at 3:34:00 PM GMT+7, Blogger Taufik Nurrohman said...

Jadikan protokol sebagai opsional → (?:https?:)?
Pastikan setidaknya ada satu karakter di dalam lingkup braket dan itu bukan spasi → \S(.*?)

Demo: https://regex101.com/r/xY9aN3/3

 
At Tuesday, January 30, 2018 at 10:27:00 AM GMT+7, Blogger Sekedus said...

Mungkin bisa dicoba yang ini [url=https://stackoverflow.com/q/3452546/7598333]stackoverflow[/url]

 
At Thursday, February 1, 2018 at 7:00:00 AM GMT+7, Blogger Sekedus said...

saya coba merubah sedikit regex untuk gambar (https dan svg) : http://jsfiddle.net/HTt3N/75/

namun saat new line pada elemen di hapus menjadi seperti ini :
<div id="comment-holder">
http://www.google.com<br>http://wow.com<br>image.jpg<br>https://cdn.rawgit.com/tovic/dte-project/master/a/emo/top.gif<br>https://2.bp.blogspot.com/-PI8Zuo2jM4o/T2vhCXeHo5I/AAAAAAAACXQ/iQU5joOKp4o/s1600/my-comment-author.png<br>http://3.bp.blogspot.com/-xBYx0e1vSLo/TstBcU365uI/AAAAAAAABW4/iv3PiNxuUy0/s1600/colormap.png<br>https://caniuse.com/img/browserstack.svg
</div>


hasilnya gambar malah menyatu dalam satu tag [url=http://jsfiddle.net/HTt3N/76/]jsfiddle[/url] :
<img src="https://cdn.rawgit.com/tovic/dte-project/master/a/emo/top.gif&lt;br&gt;https://2.bp.blogspot.com/-PI8Zuo2jM4o/T2vhCXeHo5I/AAAAAAAACXQ/iQU5joOKp4o/s1600/my-comment-author.png&lt;br&gt;http://3.bp.blogspot.com/-xBYx0e1vSLo/TstBcU365uI/AAAAAAAABW4/iv3PiNxuUy0/s1600/colormap.png&lt;br&gt;https://caniuse.com/img/browserstack.svg" alt="">

dimana letak kesalahannya dan bagaimana cara memperbaikinya?

 
At Thursday, February 1, 2018 at 8:55:00 AM GMT+7, Blogger Taufik Nurrohman said...

Ubah \S menjadi negasi [^\s] sehingga kamu dapat menambahkan karakter < ke dalam eksepsi agar pencocokan pola bisa terhenti sebelum mencapai <tag>:

/(https?:\/\/[\w\-\.]+\.[a-z]{2,3}(?:\/[^<\s]*)?(?:[\w-.])+\.(?:jpg|png|gif|jpeg|bmp|svg))/ig

Demo: http://jsfiddle.net/HTt3N/78

 
At Thursday, February 1, 2018 at 11:13:00 AM GMT+7, Blogger Sekedus said...

Terima kasih untuk jawabannya :)

sudah saya terpakan dan berhasil [url=https://jsfiddle.net/sekedus/s2oyueem/]Demo[/url]

 

Post a Comment

<< Home