{"id":162,"date":"2011-06-08T16:18:12","date_gmt":"2011-06-08T16:18:12","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=162"},"modified":"2012-02-29T21:28:29","modified_gmt":"2012-02-29T21:28:29","slug":"imprimir-contenido-de-un-div-con-javascript","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/","title":{"rendered":"Imprimir contenido de un div con javascript"},"content":{"rendered":"<p>Habitualmente las p\u00e1ginas que construimos no s\u00f3lo contienen la informaci\u00f3n que deseamos publicar, sino que \u00e9sta es acompa\u00f1ada por men\u00fas, barras de publicidad, \u00edndice de secciones, im\u00e1genes&#8230;etc. Y adem\u00e1s queremos ofrecer a los visitantes la posibilidad de imprimir s\u00f3lo lo que es contenido. Imag\u00ednate una web de cocina en la que quieres ofrecer al visitante la posibilidad de imprimir s\u00f3lo la receta, sin las barras de navegaci\u00f3n, im\u00e1genes, etc. El m\u00e9todo window.print( ) a secas no nos sirve, porque imprime la p\u00e1gina completa si antes no hacemos una selecci\u00f3n con el rat\u00f3n. \u00bfPodr\u00eda el Javascript ayudarnos en esta tarea?<\/p>\n<p>La soluci\u00f3n para lograr esto necesita que al dise\u00f1ar la p\u00e1gina preveamos que parte de su contenido vamos a ofrecer a nuestros visitantes para imprimir. Esta parte la colocamos en un elemento de bloque HTML con un atributo id, lo m\u00e1s simple es colocarla dentro de un bloque DIV. De esta forma tenemos localizada la parte de la p\u00e1gina que queremos que se imprima. Luego usaremos un bot\u00f3n o un enlace para llamar a una funci\u00f3n que abra una ventana nueva. En esta ventana se escribe el contenido del objeto correspondiente al bloque DIV, o sea, lo que deba imprimirse. Una vez hecho esto s\u00f3lo queda llamar al m\u00e9todo print de la nueva ventana.<\/p>\n<p>Lo veremos m\u00e1s claro mediante un ejemplo:<\/p>\n<p>Dentro de la etiqueta &lt;body&gt; podr\u00edamos tener algo como esto:<\/p>\n<pre id=\"line1\">&lt;div id=\"seleccion\"&gt;Este texto es lo que se imprimir\u00e1 cuando se pulse el enlace.&lt;\/div&gt;<\/pre>\n<p>Y adem\u00e1s, deberemos tener por alg\u00fan otro lugar el link que imprimir\u00e1:<\/p>\n<pre id=\"line1\">&lt;a href=\"javascript:imprSelec('seleccion')\" &gt;Imprimir texto&lt;\/a&gt;<\/pre>\n<p>Y por \u00faltimo, necesitaremos poner dentro del &lt;head&gt; la siguiente funci\u00f3n js:<\/p>\n<pre id=\"line1\">&lt;script language=\"Javascript\"&gt;\r\n\tfunction imprSelec(nombre) {\r\n\t  var ficha = document.getElementById(nombre);\r\n\t  var ventimp = window.open(' ', 'popimpr');\r\n\t  ventimp.document.write( ficha.innerHTML );\r\n\t  ventimp.document.close();\r\n\t  ventimp.print( );\r\n\t  ventimp.close();\r\n\t}\r\n\t&lt;\/script&gt;<\/pre>\n<p><a href=\"..\/..\/scripts\/javascript\/imprimir\/\">Ver ejemplo en funcionamiento<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Habitualmente las p\u00e1ginas que construimos no s\u00f3lo contienen la informaci\u00f3n que deseamos publicar, sino que \u00e9sta es acompa\u00f1ada por men\u00fas, barras de publicidad, \u00edndice de secciones, im\u00e1genes&#8230;etc. Y adem\u00e1s queremos ofrecer a los visitantes la posibilidad de imprimir s\u00f3lo lo que es contenido. Imag\u00ednate una web de cocina en la que quieres ofrecer al visitante [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6469,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[74],"class_list":["post-162","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript","tag-contenedores"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Imprimir contenido de un div con javascript - Jose Aguilar Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Imprimir contenido de un div con javascript - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"Habitualmente las p\u00e1ginas que construimos no s\u00f3lo contienen la informaci\u00f3n que deseamos publicar, sino que \u00e9sta es acompa\u00f1ada por men\u00fas, barras de publicidad, \u00edndice de secciones, im\u00e1genes&#8230;etc. Y adem\u00e1s queremos ofrecer a los visitantes la posibilidad de imprimir s\u00f3lo lo que es contenido. Imag\u00ednate una web de cocina en la que quieres ofrecer al visitante [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2011-06-08T16:18:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2012-02-29T21:28:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png\" \/>\n\t<meta property=\"og:image:width\" content=\"282\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/\",\"name\":\"Imprimir contenido de un div con javascript - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png\",\"datePublished\":\"2011-06-08T16:18:12+00:00\",\"dateModified\":\"2012-02-29T21:28:29+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png\",\"width\":282,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Imprimir contenido de un div con javascript\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Imprimir contenido de un div con javascript - Jose Aguilar Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Imprimir contenido de un div con javascript - Jose Aguilar Blog","og_description":"Habitualmente las p\u00e1ginas que construimos no s\u00f3lo contienen la informaci\u00f3n que deseamos publicar, sino que \u00e9sta es acompa\u00f1ada por men\u00fas, barras de publicidad, \u00edndice de secciones, im\u00e1genes&#8230;etc. Y adem\u00e1s queremos ofrecer a los visitantes la posibilidad de imprimir s\u00f3lo lo que es contenido. Imag\u00ednate una web de cocina en la que quieres ofrecer al visitante [&hellip;]","og_url":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2011-06-08T16:18:12+00:00","article_modified_time":"2012-02-29T21:28:29+00:00","og_image":[{"width":282,"height":300,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png","type":"image\/png"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/","url":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/","name":"Imprimir contenido de un div con javascript - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png","datePublished":"2011-06-08T16:18:12+00:00","dateModified":"2012-02-29T21:28:29+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2014\/10\/Imagen-no-disponible-282x300.png","width":282,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/imprimir-contenido-de-un-div-con-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Imprimir contenido de un div con javascript"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/162","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=162"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/162\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/6469"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}