質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Markdown

Markdownは、文書の構造、修飾情報を記述するための軽量マークアップ言語です。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

0回答

543閲覧

highlight.jsが動作せず、ハイライトされない

hilhilyzyan

総合スコア19

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Markdown

Markdownは、文書の構造、修飾情報を記述するための軽量マークアップ言語です。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

1グッド

0クリップ

投稿2019/01/30 03:17

編集2019/01/31 03:06

環境

  • mac book

  • Laravel 5.7

  • Docker & docker-compose

  • boorstrap 3.3.7

  • Bootstrap 4.0.0

  • jQuery 1.12.4

  • jQuery 3.2

  • marked.js 0.6.0

  • highlight.js 9.13.1

実現したいこと

リアルタイムでhtmlに変換される反映されるマークダウンエディタを作っています。(qiitaやteratailみたいな)

# 起こっている問題
プレビュー画面にマークダウンがhtmlに変換されるものがリアルタイムで反映されますが、
シンタックスハイライトがされていない。

コード

html

1<head> 2 <!-- Bootstrap CSS --> 3 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 4 <link href="{{ mix('css/app.css') }}" rel="stylesheet" type="text/css"> 5</head> 6<body> 7. 8. 9. 10 <div class="col-md-6"> 11 <textarea name="question-content" id="question-content"></textarea> 12 </div> 13 <div class="col-md-6"> 14 <div id="question-content-preview"></div> 15 </div> 16 17. 18. 19. 20. 21 22 <!-- jQuery --> 23 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"> 24 </script> 25 <!-- Bootstrap JavaScript--> 26 <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> 27 </script> 28 <script src="{{ mix('js/app.js') }}"></script> 29</body>

JavaScript

1import marked from 'marked'; 2import hljs from 'highlight.js'; 3 4$(function() { 5 6 marked.setOptions({ 7 langPrefix: '' 8 }); 9 10 $('#question-content').keyup(function() { 11 var html = marked($(this).val()); 12 $('#question-content-preview').html(html); 13 14 // シンタックスハイライト 15 $('#question-content-preview pre code').each(function(i, block) { 16 hljs.highlightBlock(block, block.className); 17 }); 18 }); 19});

試したこと

$('#question-content-preview pre code').each(function(i, block) { conole.log('IN!'); console.log(block); console.log(block.className); hljs.highlightBlock(block, block.className); });
// バッククォーとを入れるとコードブロックになるので、...で代用しています ...php <?php echo $aaa ?> ...

出力結果は

IN! //1こめ <code class="php hljs"> <span class="hljs-meta">&lt;?php</span> <span class="hljs-keyword">echo</span> $aaa ; <span class="hljs-meta">?&gt;</span> </code> // 2こめ php // 3こめ

シンタックスハイライトをさせるには、どのようにしたらいいか、ご教示お願いします。

bochan2👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2019/01/30 03:57 編集

CSSが効いていないように見えますが、Webブラウザのデベロッパーツールで確認した場合、CSS は読み込まれていますか?
hilhilyzyan

2019/01/30 04:02

読み込まれています! bootstrap.min.cssとapp.cssが200 OKになっています。 画面のレイアウトはCSSでちゃんと整形されていて、 CSSをいじったらレイアウトが変わります。
m.ts10806

2019/01/30 04:58

タグは最大5つまでつけられるのでなるべく現状に関係するタグは沢山つけられたほうが的確な回答を得やすくなります。
m.ts10806

2019/01/30 05:01

Laravelのapp.jsってjQuery包括していたような。 バッティングしてませんかね。バージョン。
hilhilyzyan

2019/01/31 03:04

jQueryとBootstrapの表記を削除してみました。が、変わりません。むしろmarkedのコードブロックで背景が灰色にならなくなりました... (以下、3点削除) ``` <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> . . <!-- jQuery --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"> </script> <!-- Bootstrap JavaScript--> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> </script> ```
hilhilyzyan

2019/01/31 03:20

> むしろmarkedのコードブロックで背景が灰色にならなくなりました... これに関しては、<pre>にcssをつければいけるので、なんとかなります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問