我正在尝试构建一个功能,例如每当用户访问我的网站时,我都添加了一个选项,可以在浏览器中添加默认搜索提供程序。我已经为Firefox编写了这样的代码 -
<script>
$(document).ready(function () {
var isFirefox = typeof InstallTrigger !== 'undefined';
if (isFirefox === false) {
$("#set-susper-default").remove();
$(".input-group-btn").addClass("align-search-btn");
$("#navbar-search").addClass("align-navsearch-btn");
}
if (window.external && window.external.IsSearchProviderInstalled) {
var isInstalled = window.external.IsSearchProviderInstalled("http://susper.com");
if (!isInstalled) {
$("#set-susper-default").show();
}
}
$("#install-susper").on("click", function () {
window.external.AddSearchProvider("http://susper.com/susper.xml");
});
$("#cancel-installation").on("click", function () {
$("#set-susper-default").remove();
});
});
</script>
用户点击安装按钮并运行脚本,并将该网站添加到搜索提供商列表中。如果用户刷新或再次访问我的网站,此功能将再次出现。我应该如何检测它已被添加,以便每当用户下次没有出现时访问我的网站。
如果有人可以帮助我,那将会很有帮助。谢谢:))
答案 0 :(得分:0)
很遗憾,您无法使用# server.R
library(dygraphs)
shinyServer(function(input, output) {
spectrum <- reactive({
keepscale <<-FALSE
inFile <- input$inputfile
read.table(inFile$datapath)
})
cut <- reactive({
if (is.null(input$dygraph_click$x))
return(NULL)
cut <- input$dygraph_click$x
})
output$dygraph <- renderDygraph({
if (is.null(input$inputfile)){
keepscale <<-FALSE
return(NULL)
}
else{
simpleplot<-dygraph(spectrum(), main = input$inputfile$name) %>%
dyOptions(drawXAxis = TRUE, drawYAxis = FALSE, drawGrid = FALSE,animatedZooms = FALSE) %>%
dyRoller(rollPeriod = input$rollmean, showRoller = FALSE) %>%
dyEvent(cut()) %>%
dyRangeSelector(retainDateWindow=keepscale, fillColor = "")}
keepscale <<-TRUE
return(simpleplot)
})
output$text1 <- renderText({
paste("You have selected", input$dygraph_click$x)
})
})
和IsSearchProviderInstalled
。它们在Chrome中被视为无操作,并且不应像HTML标准所描述的那样执行任何操作,更多信息请参见:https://www.chromestatus.com/feature/5672001305837568。目前AddSearchProvider
适用于Firefox,但AddSearchProvider
将始终返回0.您可以转到https://google.com并在控制台中添加此代码IsSearchProviderInstalled
来尝试。
相反,您应该尝试将搜索插件自动发现添加到您的网页中。为此,只需将external.IsSearchProviderInstalled("https://www.google.com");
元素添加到<link>
:
<head>