私はwebsiteにギターコードを移調するためにjQueryを使用していますが、何らかの理由でInternet Explorerでは動作しませんが、他のすべてのブラウザ用です。助けてください。jqueryはInternet Explorerで動作していませんか?
0
A
答えて
0
Im 99.9999999確かにjQueryではありません。 Internet Explorerは、JavaScript構文の許容範囲については、少しばかり気になります。たとえば、JSコードに余分なカンマがある場合、Internet Explorerがクラッシュする間にChromeとFireFixが無視することがあります。
私たちにいくつかのコード、または少なくともエラーメッセージなどを提供する必要があります。何か問題があるかどうかを理解するのに役立ちます。
0
私はJSコードに決して触れなかった。私はそれを適切なフォルダにコピーして貼り付けました。それは私がhttp://codegavin.com/projects/transposerからダウンロードしたプラグインから来たが、ここでjquery.transposer.jsコードです:これは私は和音があるページに置く私のコードは
/*!
* jQuery Chord Transposer plugin v1.0
* http://codegavin.com/projects/transposer
*
* Copyright 2010, Jesse Gavin
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://codegavin.com/license
*
* Date: Sat Jun 26 21:27:00 2010 -0600
*/
(function($) {
$.fn.transpose = function(options) {
var opts = $.extend({}, $.fn.transpose.defaults, options);
var currentKey = null;
var keys = [
{ name: 'Ab', value: 0, type: 'F' },
{ name: 'A', value: 1, type: 'N' },
{ name: 'A#', value: 2, type: 'S' },
{ name: 'Bb', value: 2, type: 'F' },
{ name: 'B', value: 3, type: 'N' },
{ name: 'C', value: 4, type: 'N' },
{ name: 'C#', value: 5, type: 'S' },
{ name: 'Db', value: 5, type: 'F' },
{ name: 'D', value: 6, type: 'N' },
{ name: 'D#', value: 7, type: 'S' },
{ name: 'Eb', value: 7, type: 'F' },
{ name: 'E', value: 8, type: 'N' },
{ name: 'F', value: 9, type: 'N' },
{ name: 'F#', value: 10, type: 'S' },
{ name: 'Gb', value: 10, type: 'F' },
{ name: 'G', value: 11, type: 'N' },
{ name: 'G#', value: 0, type: 'S' }
];
var getKeyByName = function (name) {
if (name.charAt(name.length-1) == "m") {
name = name.substring(0, name.length-1);
}
for (var i = 0; i < keys.length; i++) {
if (name == keys[i].name) {
return keys[i];
}
}
};
var getChordRoot = function (input) {
if (input.length > 1 && (input.charAt(1) == "b" || input.charAt(1) == "#"))
return input.substr(0, 2);
else
return input.substr(0, 1);
};
var getNewKey = function (oldKey, delta, targetKey) {
var keyValue = getKeyByName(oldKey).value + delta;
if (keyValue > 11) {
keyValue -= 12;
} else if (keyValue < 0) {
keyValue += 12;
}
var i=0;
if (keyValue == 0 || keyValue == 2 || keyValue == 5 || keyValue == 7 || keyValue == 10) {
// Return the Flat or Sharp Key
switch(targetKey.name) {
case "A":
case "A#":
case "B":
case "C":
case "C#":
case "D":
case "D#":
case "E":
case "F#":
case "G":
case "G#":
for (;i<keys.length;i++) {
if (keys[i].value == keyValue && keys[i].type == "S") {
return keys[i];
}
}
default:
for (;i<keys.length;i++) {
if (keys[i].value == keyValue && keys[i].type == "F") {
return keys[i];
}
}
}
}
else {
// Return the Natural Key
for (;i<keys.length;i++) {
if (keys[i].value == keyValue) {
return keys[i];
}
}
}
};
var getChordType = function (key) {
switch (key.charAt(key.length - 1)) {
case "b":
return "F";
case "#":
return "S";
default:
return "N";
}
};
var getDelta = function (oldIndex, newIndex) {
if (oldIndex > newIndex)
return 0 - (oldIndex - newIndex);
else if (oldIndex < newIndex)
return 0 + (newIndex - oldIndex);
else
return 0;
};
var transposeSong = function (target, key) {
var newKey = getKeyByName(key);
if (currentKey.name == newKey.name) {
return;
}
var delta = getDelta(currentKey.value, newKey.value);
$("span.c", target).each(function (i, el) {
transposeChord(el, delta, newKey);
});
currentKey = newKey;
};
var transposeChord = function (selector, delta, targetKey) {
var el = $(selector);
var oldChord = el.text();
var oldChordRoot = getChordRoot(oldChord);
var newChordRoot = getNewKey(oldChordRoot, delta, targetKey);
var newChord = newChordRoot.name + oldChord.substr(oldChordRoot.length);
el.text(newChord);
var sib = el[0].nextSibling;
if (sib && sib.nodeType == 3 && sib.nodeValue.length > 0 && sib.nodeValue.charAt(0) != "/") {
var wsLength = getNewWhiteSpaceLength(oldChord.length, newChord.length, sib.nodeValue.length);
sib.nodeValue = makeString(" ", wsLength);
}
};
var getNewWhiteSpaceLength = function (a, b, c) {
if (a > b)
return (c + (a - b));
else if (a < b)
return (c - (b - a));
else
return c;
};
var makeString = function (s, repeat) {
var o = [];
for (var i = 0; i < repeat; i++) o.push(s);
return o.join("");
}
var isChordLine = function (input) {
var tokens = input.replace(/\s+/, " ").split(" ");
// Try to find tokens that aren't chords
// if we find one we know that this line is not a 'chord' line.
for (var i = 0; i < tokens.length; i++) {
if (!$.trim(tokens[i]).length == 0 && !tokens[i].match(opts.chordRegex))
return false;
}
return true;
};
var wrapChords = function (input) {
return input.replace(opts.chordReplaceRegex, "<span class='c'>$1</span>");
};
return $(this).each(function() {
var startKey = $(this).attr("data-key");
if (!startKey || $.trim(startKey) == "") {
startKey = opts.key;
}
if (!startKey || $.trim(startKey) == "") {
throw("Starting key not defined.");
return this;
}
currentKey = getKeyByName(startKey);
// Build tranpose links ===========================================
var keyLinks = [];
$(keys).each(function(i, key) {
if (currentKey.name == key.name)
keyLinks.push("<a href='#' class='selected'>" + key.name + "</a>");
else
keyLinks.push("<a href='#'>" + key.name + "</a>");
});
var $this = $(this);
var keysHtml = $("<div class='transpose-keys'></div>");
keysHtml.html(keyLinks.join(""));
$("a", keysHtml).click(function(e) {
e.preventDefault();
transposeSong($this, $(this).text());
$(".transpose-keys a").removeClass("selected");
$(this).addClass("selected");
return false;
});
$(this).before(keysHtml);
var output = [];
var lines = $(this).text().split("\n");
var line, tmp = "";
for (var i = 0; i < lines.length; i++) {
line = lines[i];
if (isChordLine(line))
output.push("<span>" + wrapChords(line) + "</span>");
else
output.push("<span>" + line + "</span>");
};
$(this).html(output.join("\n"));
});
};
$.fn.transpose.defaults = {
chordRegex: /^[A-G][b\#]?(2|5|6|7|9|11|13|6\/9|7\-5|7\-9|7\#5|7\#9|7\+5|7\+9|7b5|7b9|7sus2|7sus4|add2|add4|add9|aug|dim|dim7|m\/maj7|m6|m7|m7b5|m9|m11|m13|maj7|maj9|maj11|maj13|mb5|m|sus|sus2|sus4)*(\/[A-G][b\#]*)*$/,
chordReplaceRegex: /([A-G][b\#]?(2|5|6|7|9|11|13|6\/9|7\-5|7\-9|7\#5|7\#9|7\+5|7\+9|7b5|7b9|7sus2|7sus4|add2|add4|add9|aug|dim|dim7|m\/maj7|m6|m7|m7b5|m9|m11|m13|maj7|maj9|maj11|maj13|mb5|m|sus|sus2|sus4)*)/g
};
})(jQuery);
0
です:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
<script type="text/javascript" src="jquery.transposer.js"></script>
<script type="text/javascript">
$(function() {
$("pre").transpose();
});
</script>
<link rel="stylesheet" type="text/css" href="jquery.transposer.css" />
<pre class="content" data-key="G">
G D Em
I sing a simple song of love
C Em D
To my Savior, to my Jesus.
G D Em
I'm grateful for the things You've done,
C Em D
My loving Savior, my precious Jesus.
Am Em D G
My heart is glad that You've called me Your own.
Am Em D
There's no place I'd rather be than
G D C
In Your arms of love,
G D C
In Your arms of love,
Em D C
Holding me still, holding me near,
G
In Your arms of love.
</pre>
関連する問題
- 1. FormDataはInternet Explorerで動作していませんか?
- 2. Jquery $ .getまたは$ .ajaxがInternet Explorerで動作していません
- 3. JQueryメソッドのプリペンドがInternet Explorerで動作しません
- 4. FlipclockプラグインがInternet Explorerで動作していません
- 5. fullcallenderがMozillaとInternet Explorerで動作していません
- 6. .html()がInternet Explorerで動作していません
- 7. Navbar LinksがInternet Explorer 11で動作していません
- 8. Ajax Jquery .load関数がInternet Explorer 9で動作していません
- 9. はJQuery removeCookieは、Internet Explorer上で動作していない7
- 10. イメージfadeInはInternet ExplorerまたはFirefoxで動作しません
- 11. FloatはInternet Explorer 8で動作しませんでした
- 12. CSSが動作していませんInternet Explorer?
- 13. GoogleマップはInternet Explorer 11では動作しません
- 14. SignalRはChromeとInternet Explorerでは動作しません
- 15. ドロップダウンメニューはInternet Explorerでは動作しません
- 16. なぜChromeでは動作しませんが、Internet Explorerで動作します
- 17. アンカーはInternet Explorer 11で動作しません
- 18. Facebook InviteはInternet Explorerで動作しません
- 19. マネージドactiveXコンポーネントはInternet Explorerで動作しません
- 20. Neo4JのサンドボックスはInternet Explorer 11で動作しません
- 21. Cookie.PathはInternet Explorerで動作しません
- 22. struts2 dojo datepickerはInternet Explorerで正常に動作しません
- 23. Simple-Expand(JQuery)はInternet Explorer 11では動作しませんが、他のブラウザで動作します
- 24. margin:0 Internet Explorerで自動0が動作していません
- 25. ボタンはInternet Explorerで動作します
- 26. JQuery AutoCompleteデータベースからのTextBoxをASP.NetのAJAX PageMethodsを使用してInternet Explorerで動作していません
- 27. Internet Explorerはサポートされていませんjquery
- 28. カスタムエラーページがInternet Explorerで動作しません
- 29. PHPヘッダー - コンテンツタイプ:image/jpeg - Internet Explorerで動作しません
- 30. Internet ExplorerでASP.NET認証が動作しません
いくつかのコードやエラーメッセージを投稿して、もっと手伝ってもらえますか? –
JQueryがあなたに与えているエラーは何ですか? –
私のIEで動作します。あなたはどちらを使いますか? – GolezTrol