From 7f35da24156271c202149eeb095aac373292f9e9 Mon Sep 17 00:00:00 2001 From: Rohan Deshpande Date: Tue, 26 Jul 2011 18:04:25 -0700 Subject: [PATCH] Support Rails :method argument on links (for ajax fill) --- src/facebox.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/facebox.js b/src/facebox.js index 7d0e39d..21de139 100644 --- a/src/facebox.js +++ b/src/facebox.js @@ -149,7 +149,7 @@ var klass = this.rel.match(/facebox\[?\.(\w+)\]?/) if (klass) klass = klass[1] - fillFaceboxFromHref(this.href, klass) + fillFaceboxFromHref(this, klass) return false } @@ -234,8 +234,9 @@ // div: #id // image: blah.extension // ajax: anything else - function fillFaceboxFromHref(href, klass) { + function fillFaceboxFromHref(el, klass) { // div + var href = el.href; if (href.match(/#/)) { var url = window.location.href.split('#')[0] var target = href.replace(url,'') @@ -247,7 +248,7 @@ fillFaceboxFromImage(href, klass) // ajax } else { - fillFaceboxFromAjax(href, klass) + fillFaceboxFromAjax(el, klass) } } @@ -259,8 +260,14 @@ image.src = href } - function fillFaceboxFromAjax(href, klass) { - $.get(href, function(data) { $.facebox.reveal(data, klass) }) + function fillFaceboxFromAjax(el, klass) { + $.ajax({ + url: el.href, + type: $(el).attr('data-method') || 'GET', + success: function(data) { + $.facebox.reveal(data, klass); + } + }); } function skipOverlay() {