私は自分のサイトへのPHPにアクセスできないため、以下で実行しようとしています。このコードを使用して回避しています。以下にリストされている2つを含むリンクを検索します。/ watchでyoutubeから1つ?それと他のYouTubeからのURLに/vだけが含まれています。また、埋め込まれた要素を検索しています。問題は、スクリプトを実行すると、エラーのために他のすべてのコードが壊れることです。
Uncaught TypeError:未定義のメソッド'replace'を呼び出すことができません
お尻の痛みです!それで私はそれをFFに引き継ぎました、しかし変数WTは明確に定義されていないと言います。ifステートメントの範囲外で使用したためではないかもしれません。リンクが存在するかどうかを確認する方法がわかりません。コードを実行してください。埋め込みが存在する場合と同様に、コードも実行します。これらは私のユーザーの投稿にあり、私のfancyboxで動作するように自動的に変更されます。
クイックリンクされたCSSを使用して私のページからコピーされたマークアップなので、バグのある外観を気にしないでください。
$(function() {
//if link contains /watch?
var t = $('.entry-content div div a[href*="youtube.com/watch?"]').attr('href');
if(typeof t !== "undefined") {
//do nothing don't run the script below
} else {
var d = $('.entry-content div div a[href*="youtube.com/watch?"]');
var newsrc = t.replace('watch?','');
var asrc = newsrc.replace('=','/');
var g = asrc.replace('http://www.','http://img.');
var s = g.replace('v','vi');
d.attr('class','ez_video');
d.attr('href', asrc).html('<img src="'+ s +'/0.jpg"/>');
}
//if link contains /v
var wt = $('.entry-content div div a[href*="youtube.com/v"]').attr('href');
if(typeof wt !== "undefined") {
//do nothing don't run script below
} else {
var wd = $('.entry-content div div a[href*="youtube.com/v"]');
var o = wt.replace('http://www.','http://img.');
var v = o.replace('v','vi');
wd.attr('class','ez_video');
wd.attr('href', v).html('<img src="'+ v +'/0.jpg"/>');
}
//if embeded file
var src = $('.entry-content').find('embed').attr('src');
if (typeof src !== "undefined") {
//do nothing again unless true run script below
} else {
var qload = src.replace('http://youtube.com/v/','');
var y = src.replace('http://','http://img.');
var imgsrc = y.replace('v','vi');
$('embed').before('<a class="ez_video" id="'
+ qload +'" href="'+ src +'"><img src="'
+ imgsrc +'/0.jpg" tile="" alt=""/></a>');
$('embed').remove();
}
//Now make all work with the fancybox
$('.ez_video').fancybox({
'autoScale' : false,
'transitionIn' : 'elastic',
'transitionOut' : 'elastic',
'width' : 854,
'height' : 480,
'type' : 'swf',
'swf' : {
'wmode' : 'transparent',
'allowfullscreen' : 'true'
}
});
});