SleePy Public Git Projects
Repositories
Main Site
GitHub Profile
smf_package_maker
Code
Commits
Branches
Tags
Search
Tree:
48eba75
Branches
Tags
master
smf_package_maker
assets
jquery.generateFile.js
Initial SMF Package Maker Script
Jeremy D
commited
48eba75
at 2011-12-29 14:23:18
jquery.generateFile.js
Blame
History
Raw
(function($){ // Creating a jQuery plugin: // http://tutorialzine.com/2011/05/generating-files-javascript-php $.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);