diff --git a/b2_nice_comments.css b/b2_nice_comments.css
deleted file mode 100644
index 19949a0..0000000
--- a/b2_nice_comments.css
+++ /dev/null
@@ -1,9 +0,0 @@
-.b2_nice_comment_textarea
-{
-    width: 100%;
-    color: #717171;
-    text-align: left;
-    font-size: 1.2em;
-    cursor: text;
-    font-weight: normal;
-}
\ No newline at end of file
diff --git a/b2_nice_comments.info b/b2_nice_comments.info
index 7c38ba5..9dd9f66 100644
--- a/b2_nice_comments.info
+++ b/b2_nice_comments.info
@@ -1,4 +1,3 @@
 name = b2 Nice Comments
-package = b2
-description = Module that replaces the comment section with a simple textbox, and expands the original form when clicked. This gives a much cleaner look to the page.
-core = 7.x
\ No newline at end of file
+description = Replaces the comment section with a simple textbox, and expands the original form when clicked.
+core = 7.x
diff --git a/b2_nice_comments.js b/b2_nice_comments.js
deleted file mode 100644
index 4ba2ed5..0000000
--- a/b2_nice_comments.js
+++ /dev/null
@@ -1,29 +0,0 @@
-jQuery(document).ready(function(){
-    
-    jQuery('.b2_nice_comment_textarea').click(function(){
-        
-        var _form_id = jQuery(this).attr('id').split('___')[1];
-        
-        jQuery('#'+jQuery(this).attr('id')).hide('fast');
-        jQuery('#b2_nice_comment_container_id___'+_form_id).show('fast',function(){
-
-            var container = jQuery('body');
-            var scrollTo = jQuery('#comment-form');
-        
-            container.scrollTop(
-                scrollTo.offset().top - container.offset().top
-            );
-            
-        });
-        
-        jQuery('#b2_nice_comment_container_id___'+_form_id+' '+'textarea[name*="comment_body"]').focus();
-        jQuery('#b2_nice_comment_container_id___'+_form_id+' '+'[name="subject"]').focus();
-       
-    });
-
-    if( location.href.indexOf("#comment-form")!=-1 || location.href.indexOf("comment/reply")!=-1 )
-    {
-        jQuery('.b2_nice_comment_textarea').click();               
-    }
-    
-});
\ No newline at end of file
diff --git a/b2_nice_comments.module b/b2_nice_comments.module
index 0e05fcd..f107015 100644
--- a/b2_nice_comments.module
+++ b/b2_nice_comments.module
@@ -2,47 +2,23 @@
 
 /**
  * @file
- * Module that replaces the comment section with a simple textbox, and expands the original form when clicked.
+ * Replaces the comment form with a textarea that expands the original form upon click.
  */
 
 /**
- * b2_nice_comments_form_alter()
- * 
- * Drupal form alter hook implementation
- * 
- * @param mixed $form
- * @param mixed $form_state
- * @param mixed $form_id
- * @return void
+ * Implements hook_form_BASE_FORM_ID_alter().
+ *
+ * Process all comment forms.
  */
-function b2_nice_comments_form_alter(&$form, &$form_state, $form_id)
-{
+function b2_nice_comments_form_comment_form_alter(&$form, &$form_state, $form_id) {
+  // Adding CSS and JS.
+  $path = drupal_get_path('module', 'b2_nice_comments');
+  $form['#attached']['css'][] = $path . '/css/b2_nice_comments.base.css';
+  $form['#attached']['css'][] = $path . '/css/b2_nice_comments.theme.css';
+  $form['#attached']['js'][] = $path . '/js/b2_nice_comments.js';
 
-    if(strpos($form_id,'comment_node_')===0)
-    {
-        
-        // adding css and js
-        
-        drupal_add_css(drupal_get_path('module', 'b2_nice_comments') . '/b2_nice_comments.css');
-        drupal_add_js(drupal_get_path('module', 'b2_nice_comments') . '/b2_nice_comments.js');
-             
-        // adding required html to the form
-                
-        $form['b2_nodecomment_pre'] = array(
-            '#type'=>'item',
-            '#prefix'=>'
-<textarea readonly="readonly" rows="2" class="b2_nice_comment_textarea" id="b2_nice_comment_textbox_id___'.$form_id.'">'.t('Leave a comment!').'</textarea><div id="b2_nice_comment_container_id___'.$form_id.'" class="b2_nice_comment_container" style="display:none;">                
-            ',
-            '#weight' => -999
-        );
-
-        $form['b2_nodecomment_suf'] = array(
-            '#type'=>'item',
-            '#suffix'=>'
-</div><a name="b2_nice_comment_scrolltome_name___'.$form_id.'" id="b2_nice_comment_scrolltome_id___'.$form_id.'" style="width:1px;height:1px;overflow:hidden;">&nbsp;</a>                  
-            ',
-            '#weight' => 999                    
-        );
-    }
-
-}
\ No newline at end of file
+  // Adding required HTML to the form.
+  $form['#prefix'] = '<textarea readonly="readonly" rows="2" class="b2-nice-comment-textarea">' . t('Leave a comment!') . '</textarea>';
+  $form['#prefix'] .= '<div class="b2-nice-comment-container">';
+  $form['#suffix'] = '</div>';
+}
diff --git a/css/b2_nice_comments.base.css b/css/b2_nice_comments.base.css
new file mode 100644
index 0000000..e0515cc
--- /dev/null
+++ b/css/b2_nice_comments.base.css
@@ -0,0 +1,9 @@
+.b2-nice-comment-textarea {
+  cursor: text;
+  width: 100%;
+}
+
+.no-js .b2-nice-comment-textarea,
+.js .b2-nice-comment-container {
+  display: none;
+}
diff --git a/css/b2_nice_comments.theme.css b/css/b2_nice_comments.theme.css
new file mode 100644
index 0000000..81ae13a
--- /dev/null
+++ b/css/b2_nice_comments.theme.css
@@ -0,0 +1,5 @@
+.b2-nice-comment-textarea {
+  color: #717171;
+  font-size: 1.2em;
+  font-weight: normal;
+}
diff --git a/js/b2_nice_comments.js b/js/b2_nice_comments.js
new file mode 100644
index 0000000..fcc934a
--- /dev/null
+++ b/js/b2_nice_comments.js
@@ -0,0 +1,34 @@
+(function ($) {
+
+Drupal.behaviors.b2NiceComments = {
+  attach: function(context) {
+
+    $('.b2-nice-comment-textarea').click(function() {
+      $(this)
+        // Hide the textarea.
+        .hide('fast')
+        // Get the corresponding container.
+        .siblings('.b2-nice-comment-container')
+        .show('fast', function() {
+          var container = $('body');
+          // Scroll to the comment form.
+          container.scrollTop(
+            $(this).find('#comment-form').offset().top - container.offset().top
+          );
+
+        })
+        // Move focus to the comment body.
+        .find('textarea[name*="comment_body"]')
+          .focus()
+        .end();
+    });
+
+    // @todo.
+    if (location.href.indexOf('#comment-form') != -1 || location.href.indexOf('comment/reply') != -1) {
+      $('.b2-nice-comment-textarea').click();
+    }
+
+  }
+};
+
+})(jQuery);
