Возможно, это не лучший способ, но он работает.
// Here is your path
String p = photosLocation + "whatever.jpg";
// Here is the page address
String pa = Page.Request.Url.AbsoluteUri;
// Take the page name
String pn = Page.Request.Url.LocalPath;
// Here is the server address
String sa = pa.Replace(pn, "");
// Take the physical location of the page
String pl = Page.Request.PhysicalPath;
// Replace the backslash with slash in your path
pl = pl.Replace("\\", "/");
p = p.Replace("\\", "/");
// Root path
String rp = pl.Replace(pn, "");
// Take out same path
String final = p.Replace(rp, "");
// So your picture's address is
String path = sa + final;
Редактирование: хорошо, кто-то отметил как не полезный. Некоторое объяснение: выберите медосмотр путь текущей страницы, разделите его на две части: сервер и каталог (как c:\inetpub\whatever.com\whatever) и название страницы (как/Whatever.aspx). Физический путь изображения должен содержать путь сервера, таким образом, "substract" их, покидая только путь изображения относительно сервера (как: \design\picture.jpg). Замените обратные косые черты наклонными чертами и добавьте его к URL сервера.
Чтобы удалить видео, а затем снова добавить его, добавьте в свою функцию, закрывающую видеоокно следующее:
// Remove and re-add video
var clone = $("#video-holder").clone(true);
$("#video-holder").remove();
$("#video").html(clone);
Где у вас есть окружающий div "видео" и внутри div "держателя видео", в котором размещается код для встраивания.
Скорее всего, вы применяете display: none;
к div, содержащему объект flash, а не к самому объекту flash.
Я возился с похожая проблема сегодня, и хотя у меня нет точного решения для вас, у меня есть возможность попробовать, когда вы перепрыгиваете между div, чтобы попытаться выключить плеер:
$(flashobjectid).attr('height', '0');
Если используемый вами flash-плеер является наиболее часто используемым проигрывателем jw, чем вы могли бы (когда скрываете div):
document.getElementById(playerId).sendEvent("PLAY","false");
Вы можете попробовать удалить элемент при переходе от div, содержащего флэш, например $ ("object"). Remove ();
simply clear the container of the video like this:
$("#VideoContainer").html("");
. Самая полезная вещь, которую вы могли бы сделать, это публикация, какой видеоплеер вы используете. Youtube и Brightcove имеют API-интерфейсы Javascript, которые можно использовать для управления плеером. Как говорит здесь тахдхаз, лучше всего было бы остановить игрока в событии window.onBlur и запустить его снова, когда он получит фокус.
Использование CSS для остановки воспроизведения видео в лучшем случае сложно, в худшем - взломать ... используйте API-интерфейс моста Flash-Javascript, который поставляется с плеером.
Возможно, вам потребуется запрограммировать функцию player.stop
или player.pause
для игрока в событии onBlur
страницу.
Иногда я использую его в таких ситуациях, как
void countdown(int n)
{
for (; n > 0; n--) {
// do something
}
}
, чтобы избежать введения переменной i в цикл for. Обычно я использую эти «трюки» только в очень коротких функциях.
Лично мне очень не нравятся «корректирующие» параметры внутри функции в этом пути. Я предпочитаю ловить их, утверждая, и убедиться, что контракт прав.
-121--2143429-Следующее решение позволяет извлечь текст из последовательности:
FareRule = Encoding.ASCII.GetString(FareRuleInfoRS.Data);
System.Windows.Forms.RichTextBox rtf = new System.Windows.Forms.RichTextBox();
rtf.Rtf = FareRule;
FareRule = rtf.Text;
-121--1255852- $("#flashContainer").empty()
также приведет к очистке кода вставки и остановке Flash