diff --git a/plugin/markdown/markdown.js b/plugin/markdown/markdown.js
index 00d25380..9564208f 100755
--- a/plugin/markdown/markdown.js
+++ b/plugin/markdown/markdown.js
@@ -283,9 +283,18 @@
}
else {
-
- section.innerHTML = createMarkdownSlide( getMarkdownFromSlide( section ) );
-
+ var content = getMarkdownFromSlide( section );
+ var slideAttributesSeparatorRegex = new RegExp( section.getAttribute( 'data-attributes' ) || DEFAULT_SLIDE_ATTRIBUTES_SEPARATOR, 'm' );
+ var matchAttributes = slideAttributesSeparatorRegex.exec( content );
+ if ( matchAttributes ) {
+ var slideAttributes = matchAttributes[1];
+ content = content.replace( slideAttributesSeparatorRegex,"" );
+ var slideAttributesRegex = new RegExp( "([^\"= ]+?)=\"([^\"=]+?)\"", 'mg' );
+ while( matchesAttributes = slideAttributesRegex.exec( slideAttributes ) ) {
+ section.setAttribute( matchesAttributes[1], matchesAttributes[2] );
+ }
+ }
+ section.innerHTML = createMarkdownSlide( content );
}
}
diff --git a/test/test-markdown-attributes.html b/test/test-markdown-attributes.html
index 262c6ae7..cc031770 100644
--- a/test/test-markdown-attributes.html
+++ b/test/test-markdown-attributes.html
@@ -87,6 +87,31 @@
+
+
+
+
+
+
diff --git a/test/test-markdown-attributes.js b/test/test-markdown-attributes.js
index 3e883410..a11f63bc 100644
--- a/test/test-markdown-attributes.js
+++ b/test/test-markdown-attributes.js
@@ -36,6 +36,11 @@ Reveal.addEventListener( 'ready', function() {
strictEqual( document.querySelectorAll( '.reveal .slides>section>section[data-transition="page"]' ).length, 1, 'found one vertical slide with data-transition="fade"' );
strictEqual( document.querySelectorAll( '.reveal .slides section [data-transition="concave"]' ).length, 1, 'found one slide with data-transition="zoom"' );
});
+
+ test( 'data-transition attributes with inline content', function() {
+ strictEqual( document.querySelectorAll( '.reveal .slides>section[data-background="#ff0000"]' ).length, 3, 'found three horizontal slides with data-background="#ff0000"' );
+ });
+
} );
Reveal.initialize();