0
2 개의 갤러리가 있습니다. 하나는 microsoft의 deepzoom 합성물이고 다른 하나는 데이터베이스에서 갤러리를 호출하는 짧은 코드입니다. 각 갤러리는 자체 div에 있습니다. 사파리에서만 사파리 갤러리를 표시하고 다른 div는 숨길 필요가 있습니다. 그런 다음 다른 브라우저에서 사파리 div를 숨기고 deepzoom 갤러리를 표시해야합니다.워드 프레스에서 사파리 브라우저를위한 div를 숨기고 다른 div를 페이지로드에 대신 표시하십시오.
JQuery와 : 내가 사용하고
강령은 다음과 같다 `
<script>
var BrowserDetect = {
init: function() {
this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
this.version = this.searchVersion(navigator.userAgent)
|| this.searchVersion(navigator.appVersion)
|| "an unknown version";
this.OS = this.searchString(this.dataOS) || "an unknown OS";
},
searchString: function (data) {
for (var i=0;i<data.length;i++) {
var dataString = data[i].string;
var dataProp = data[i].prop;
this.versionSearchString = data[i].versionSearch || data[i].identity;
if (dataString) {
if (dataString.indexOf(data[i].subString) != -1)
return data[i].identity;
}
else if (dataProp)
return data[i].identity;
}
},
searchVersion: function (dataString) {
var index = dataString.indexOf(this.versionSearchString);
if (index == -1) return;
return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
},
dataBrowser: [
{
string: navigator.userAgent,
subString: "Chrome",
identity: "Chrome"
},
{ string: navigator.userAgent,
subString: "OmniWeb",
versionSearch: "OmniWeb/",
identity: "OmniWeb"
},
{
string: navigator.vendor,
subString: "Apple",
identity: "Safari",
versionSearch: "Version"
},
{
prop: window.opera,
identity: "Opera",
versionSearch: "Version"
},
{
string: navigator.vendor,
subString: "iCab",
identity: "iCab"
},
{
string: navigator.vendor,
subString: "KDE",
identity: "Konqueror"
},
{
string: navigator.userAgent,
subString: "Firefox",
identity: "Firefox"
},
{
string: navigator.vendor,
subString: "Camino",
identity: "Camino"
},
{ // for newer Netscapes (6+)
string: navigator.userAgent,
subString: "Netscape",
identity: "Netscape"
},
{
string: navigator.userAgent,
subString: "MSIE",
identity: "Explorer",
versionSearch: "MSIE"
},
{
string: navigator.userAgent,
subString: "Gecko",
identity: "Mozilla",
versionSearch: "rv"
},
{ // for older Netscapes (4-)
string: navigator.userAgent,
subString: "Mozilla",
identity: "Netscape",
versionSearch: "Mozilla"
}
],
dataOS : [
{
string: navigator.platform,
subString: "Win",
identity: "Windows"
},
{
string: navigator.platform,
subString: "Mac",
identity: "Mac"
},
{
string: navigator.userAgent,
subString: "iPhone",
identity: "iPhone/iPod"
},
{
string: navigator.platform,
subString: "Linux",
identity: "Linux"
}
]
};
BrowserDetect.init();
switch(BrowserDetect.browser) {
if($.browser.safari) {
$(".safari_galery").show();
$(".default_galery").hide();}
break;
default:
$(".safari_galery").hide();
$(".default_galery").show();
}
</script>
<div class="safari_galery">[slideshow id=3]</div>
<div class="default_galery">[iframe src="http://link to the iframe" id="deepzoom" name="deepzoom" width="100%" height="700px" scrolling="no"]</div>
이 워드 프레스에서 작동하지 않습니다와 나는이 그림 슈퍼 힘든 시간을 보내고있다대로 나는 필사적이다 아웃.
빠른 답장을 보내 주셔서 감사합니다. 그것을 시도하고 그것이 작동하지 않습니다. 나는 'if ($ .browser.safari) {'case'Safari '를 사용했지만 대신 시도했지만 작동하지 않았다. 꼬리말뿐만 아니라 머리 글자에서 스크립트를 시도했지만 아직 성공하지 못했습니다. – user2313178
if (BrowserDetect.browser == 'Safari') {// $ .browser.safari 대신에 수정해야합니다. – lotsofcode